【问题标题】:Copy Button For Ios SafariiOS Safari 的复制按钮
【发布时间】:2017-02-18 23:44:49
【问题描述】:

大家好,我想要移动网站上的复制按钮,我有 用JS实现它,它适用于android但在ios文本上不行 复制,有没有办法在ios safari 上复制textarea 文本?

这是我在安卓浏览器上运行的代码

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

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

谢谢

【问题讨论】:

标签: javascript ios iphone safari copy-paste


【解决方案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';

        }

});

【讨论】:

  • 这个有非jQuery版本吗?
  • 它对我有用,但虚拟键盘显示半秒钟然后关闭。不知道如何阻止它显示。
猜你喜欢
  • 2020-01-11
  • 2017-06-17
  • 2012-05-14
  • 2021-07-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-25
相关资源
最近更新 更多