繁体   English   中英

将元素作为HTML复制到剪贴板

[英]copy an element as HTML to clipboard

我设法写了一些jQuery来找到一个元素并将它的html复制到剪贴板(即只有)。

问题是,当我将其粘贴到sharepoint中的富文本框区域时,它仅将HTML粘贴为文本。

如何复制突出显示页面上的链接并按下复制的用户操作。 当我手动执行此操作然后粘贴剪贴板内容时,富文本区域会意识到它是标记并将链接复制为文本内容中的锚点。

不幸的是,据我所知,IE给剪贴板的唯一程序访问允许你设置文本数据和URL数据,但没有别的: http//msdn.microsoft.com/en-us/library/ms536744(v = VS.85)的.aspx

这有效:

window.clipboardData.setData("text", "<div>Testing</div>");

......但是你提到的问题。 可悲的是,这不起作用:

window.clipboardData.setData("html", "<div>Testing</div>");

有点令人惊讶,真的。

这就是我用来复制/粘贴超链接HTML元素到剪贴板的内容,这样当你粘贴它时,隐藏了href,你只能看到“更漂亮”的名字。

HTML:

<button onclick="copyToClipboard()">Copy me!</button>

使用Javascript:

var copyToClipboard = (function() {
    var _dataString = null;
    $('.transform').toggleClass('transform-active');
    document.addEventListener("copy", function(e){
        if (_dataString !== null) {
            try {
                e.clipboardData.setData("text/html", link);
                e.preventDefault();
            } finally {
                _dataString = null;
            }
        }
    });
    return function(data) {
        _dataString = data;
        document.execCommand("copy");
    };
})();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM