提问者:小点点

Ios Safari的“复制”按钮


大家好,我想要复制按钮在我的移动网站,我已经实现了它与JS,它工作良好的android但在ios文本不复制,有没有办法复制文本在ios safari?

这是我在android浏览器上工作的代码

var input  = document.getElementById("input_output");
var button = document.getElementById("copy-button");

button.addEventListener("click", function (event) {
    event.preventDefault();
    input.select();
    document.execCommand("copy");
});

谢谢


共1个答案

匿名用户

你可以试试这个,它将适用于Ios和其他浏览器。

button.addEventListener("click", function (event) {
event.preventDefault();
    if (navigator.userAgent.match(/ipad|ipod|iphone/i)) {
            var $input = $('#input_output');
            $input.val();
            var el = $input.get(0);
            var editable = el.contentEditable;
            var readOnly = el.readOnly;
            el.contentEditable = true;
            el.readOnly = false;
            var range = document.createRange();
            range.selectNodeContents(el);
            var sel = window.getSelection();
            sel.removeAllRanges();
            sel.addRange(range);
            el.setSelectionRange(0, 999999);
            el.contentEditable = editable;
            el.readOnly = readOnly;

            var successful = document.execCommand('copy');
            $input.blur();
            var msg = successful ? 'successful ' : 'un-successful ';  


        }
        else{

            var copyTextarea = document.querySelector('#input_output');
            copyTextarea.select();

            var successful = document.execCommand('copy');
            var msg = successful ? 'successful ' : 'unsuccessful';

        }

});