我的脚本在IE(甚至9)中不起作用?简单的javascript修改复制文本

时间:2012-08-21 04:32:49

标签: javascript jquery

所以有一天我正在浏览互联网,并复制了一大块文字“我很酷的文字”并将其粘贴到Facebook上,只是为了看到它改为“我很酷文字 - 阅读更多网址 “,我很敬畏!太棒了!

所以我稍稍潜入并找到了一些教程等等。我自己将它转换为具有许多选项的可自定义插件,并输出(或基于选项的类似):

function copyCopyright() {
    var theBody = document.getElementsByTagName("body")[0];
    var selection;
    selection = window.getSelection();
    var copyrightLink = '<br /><br />Read more at: '+document.location.href+'<br /> &copy;2012  ';
    var copytext = selection + copyrightLink;
    var extraDiv = document.createElement("div");
    extraDiv.style.position="absolute";
    extraDiv.style.left="-99999px";
    theBody.appendChild(extraDiv);
    extraDiv.innerHTML = copytext;
    selection.selectAllChildren(extraDiv);
    window.setTimeout(function() {
        theBody.removeChild(extraDiv);
    },0);
}
document.oncopy = copyCopyright;​

在Chrome和Firefox等中运行效果很好但是在COURSE中它在IE中不起作用(甚至是IE9!)。我对Javascript很新,特别是用它来解决IE问题。

是否有一个函数或方法或某些东西,IE只是无法识别我将不得不寻找替代方法?

1 个答案:

答案 0 :(得分:4)

IE需要

document.body.oncopy=copyCopyright

添加到您的onload事件中。 (身体在装载之前不存在)