复制特定div中的文字

版权声明:非商业转载请附上地址与作者信息,谢谢! https://blog.csdn.net/jx950915/article/details/78753974

代码呈上:

js

function execClick(){
    document.execCommand("copy");
}

function execCopy(event,textDiv){
    var thisDiv = document.getElementById(textDiv);
    if(isIE()){
        if(window.clipboardData){
            window.clipboardData.setData("Text", thisDiv.textContent);
            alert(window.clipboardData.getData("Text"));
        }
    }else{
        event.preventDefault();
        if (event.clipboardData) {
            event.clipboardData.setData("text/plain", thisDiv.textContent);
            alert(event.clipboardData.getData("text"));
        }
    }
}

function isIE(){
    var input = window.document.createElement ("input");
    //"!window.ActiveXObject" is evaluated to true in IE11
    if (window.ActiveXObject === undefined) return null;
    if (!window.XMLHttpRequest) return 6;
    if (!window.document.querySelector) return 7;
    if (!window.document.addEventListener) return 8;
    if (!window.atob) return 9;
    //"!window.document.body.dataset" is faster but the body is null when the DOM is not
    //ready. Anyway, an input tag needs to be created to check if IE is being
    //emulated
    if (!input.dataset) return 10;
    return 11;
}

html

这里是有两种情况,一种是复制自身内容块的文字,一种是复制别的内容块的文字,不过用法基本一致

<div id="textDiv1" onclick="execClick();" oncopy="execCopy(event,'textDiv1');">这里是要复制的文字1</div>
<div id="textDiv2">这里是要复制的文字2</div>
<a onclick="execClick();" oncopy="execCopy(event,'textDiv2');">复制</a>

效果图

没有更多推荐了,返回首页