1

我在 Internet Explorer 中拖放时遇到问题。

我正在更改 mousemove 处理程序中对象的 offset():

this.target.offset({
    left: e.pageX - this.target.outerWidth(true) / 2,
    top: e.pageY - this.target.outerHeight(true) / 2
})

它适用于除 IE 之外的所有浏览器。这是包含其他 JS 文件的更大项目的一部分,我已经确定了执行此操作的文件。但我无法修改它,我也不太明白它在那里做了什么,为什么?

我确定负责的代码部分是:

$.browser.msie && ($.fn.position = function () {
        return {
            left: this[0].offsetLeft,
            top: this[0].offsetTop
        }
    }, $.fn.offset = function () {
        var e = this[0],
            t = 0,
            n = 0;
        do t += e.offsetLeft, n += e.offsetTop; while (e = e.offsetParent);
        return {
            left: t,
            top: n
        }
    });

我怎么解决这个问题?

4

0 回答 0