h5 js復制 功能


感謝

http://www.jq22.com/webqd6003

 

var copy1 = document.getElementById('copy1');
var copy2 = document.getElementById('copy2');
var textBox = document.getElementById('textBox');
copy1.onclick = function() {
    copyText(textBox);
}

copy2.onclick = function() {
    copyText('電話號碼:' + textBox.innerHTML);
}


/**復制文本 */
function copyText(node) {
    if (!node) {
        return;
    }
    var result;
    // 將復制內容添加到臨時textarea元素中
    var tempTextarea = document.createElement('textarea');
    document.body.appendChild(tempTextarea);
    if (typeof(node) == 'object') {
        // 復制節點中內容
        // 是否表單
        if (node.value) {
            tempTextarea.value = node.value;
        } else {
            tempTextarea.value = node.innerHTML;
        }
    } else {
        // 直接復制文本
        tempTextarea.value = node;
    }
    // 判斷設備
    var u = navigator.userAgent;
    if (u.match(/(iPhone|iPod|iPad);?/i)) {
        // iOS
        // 移除已選擇的元素
        window.getSelection().removeAllRanges();
        // 創建一個Range對象
        var range = document.createRange();
        // 選中
        range.selectNode(tempTextarea);
        // 執行選中元素
        window.getSelection().addRange(range);
        // 復制
        result = document.execCommand('copy');
        // 移除選中元素
        window.getSelection().removeAllRanges();

    } else {
        // 選中    
        tempTextarea.select();
        // 復制
        result = document.execCommand('Copy');
    }
    // 移除臨時文本域
    document.body.removeChild(tempTextarea);
    if (result) {
        alert('復制成功', {
            removeTime: 1000
        })
    } else {
        alert('復制失敗', {
            removeTime: 1000
        })
    }

    return result;
}

測試安卓,沒測試ios


免責聲明!

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



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