zClip使用时ZeroClipboard取到的offsetTop和offsetLeft不对的问题

zClip是个很好的兼容浏览器的复制到剪贴板的解决方案。在使用时,当配合artDialog弹出框使用时发现,ZeroClipboard取到的offsetTop和offsetLeft不对。

修改ZeroClipboard的getDOMObjectPosition函数如下:

    getDOMObjectPosition: function (obj, stopObj) {
        // get absolute coordinates for dom element
        var info = {
            left: 0,
            top: 0,
             obj.width ? obj.width : obj.offsetWidth,
            height: obj.height ? obj.height : obj.offsetHeight
        };

        if (obj && (obj != stopObj)) {
            jpos = $(obj).position();
            info.left += jpos.left;
            info.top += jpos.top;
        }

        return info;
    }

这里使用了jQuery的position函数。issue提交在这里

原文地址:https://www.cnblogs.com/jiji262/p/2735606.html