JS 實現復制、全選文本


 

先上效果,由於截圖,高亮藍色成了灰色    參考這位大佬的   https://www.cnblogs.com/dreambin/p/9046999.html

HTML 部分

<form name=test>  
    <input type="button" id="cardList" value="點此全選復制" onclick="javascript:selectAll('test.select1')">

    <textarea name="select1" rows=3 cols=46 onclick="selectAll('test.select1')">可以全選</textarea>
</form>

 

javaScript 部分

//實現全選功能
    function selectAll(theField) {

        var tempval = eval("document." + theField)  //這里主要是要得到dom  document.test.select1

        tempval.select()    // 選取文本域的內容

        this.copy(tempval.value)
    }


    //實現復制功能
    /*
        Evevt.clipboardData 對象

        clipboardData是JavaScript剪切板對象,該對象提供了3個常用方法:

      clearData():  clipboardData對象從剪切板刪除一種或多種數據格式(一個參數:數據類型)

      getData():  clipboardData對象從剪切板獲取指定格式的數據(一個參數:數據類型)

      setData():  clipboardData對象賦予指定格式的數據(兩個參數:數據類型,要賦予的值)

      *數據類型一般為“"text/plain" ”
    */
    function copy(str) {
        var save = function (e) {
            e.clipboardData.setData('text/plain', str); //clipboardData對象
            e.preventDefault(); //阻止默認行為
        }
        document.addEventListener('copy', save);    
        document.execCommand("copy"); //使文檔處於可編輯狀態,否則無效
    }

    document.getElementById('cardList').addEventListener('click', function (ev) {
        copy(ev.target.innerText)
    })

    selectAll('test.select1')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM