2012年3月12日 星期一

jQuery UI 拖曳功能在IE9失效

jQuery UI 版本小於 1.8.5 的拖曳功能在IE9無法運作,須更新到1.8.6以上。

或是自己加上修正。

相關討論與修正方式:

http://bugs.jqueryui.com/ticket/5370

http://forum.jquery.com/topic/jquery-ui-does-not-work-on-ie9

修正方式寫法1:
var msie9 = false;
if ($.ui && $.browser.msie && parseInt($.browser.version,10) >= 9) {
  var a=$.ui.mouse.prototype._mouseMove;
  $.ui.mouse.prototype._mouseMove=function(b){b.button=1;a.apply(this,[b]);}
}

修正方式寫法2:
(function($){
  var a=$.ui.mouse.prototype._mouseMove;
  $.ui.mouse.prototype._mouseMove=function(b){
    if($.browser.msie&&document.documentMode>=9){b.button=1};a.apply(this,[b]);
  }
}(jQuery));

沒有留言:

張貼留言