Jquery ui draggable在chrome和ie7下的bug

当页面足够长,向下滚动一些之后,

在拖动时,被拖动的div会向下产生滚动距离那么高(scrolltop)的差距

image

image

鼠标位置距div顶部差距了正好页面scroll的距离,页面scoll越多差的越多。

解决方法参考:http://stackoverflow.com/questions/5791886/jquery-draggable-shows-helper-in-wrong-place-when-scrolled-down-page

$("#abc").draggable({
    drag: function (event, ui) {
        if ($.browser.chrome || ($.browser.msie && $.browser.version == 7)) {
            ui.position.top -= $(window).scrollTop();
        }
    }
});

加上drag事件回调,判断浏览器,减去响应的高度即可

原文地址:https://www.cnblogs.com/czcz1024/p/3245620.html