如何通过js往剪贴板中,添加一段文本
1 var oInput = document.createElement('input'); 2 oInput.setAttribute('value', this.downloadUrl); 3 document.body.appendChild(oInput); 4 //选择对象 5 oInput.select(); 6 // 执行浏览器复制命令 7 document.execCommand("Copy"); 8 document.body.removeChild(oInput);
某些安卓机型执行copy时,屏幕下方会出现白屏抖动,修复如下:
1 oInput.setAttribute('readonly', 'readonly');
在ios某些机型如iphone6并没有选中全部内容,修复如下:
1 oInput.setSelectionRange(0, oInput.value.length);
完整代码(复制即可用):
1 var oInput = document.createElement('input'); 2 //修复某些安卓机型执行copy时,屏幕下方会出现白屏抖动的问题 3 oInput.setAttribute('readonly', 'readonly'); 4 oInput.setAttribute('value', this.downloadUrl); 5 document.body.appendChild(oInput); 6 //选择对象 7 oInput.select(); 8 //修复无法复制的问题,在ios某些机型如iphone6并没有选中全部内容 9 oInput.setSelectionRange(0, oInput.value.length); 10 // 执行浏览器复制命令 11 document.execCommand("Copy"); 12 document.body.removeChild(oInput);
注:以上是我遇到的俩个异常。不能保证是否还有其它机型/浏览器问题,如有请帮忙完善~