复制和粘贴在Mobile Safari和CodeMirror上不起作用



我已经写了以下代码:

function copy() {
  if(window.clipboardData) {
    window.clipboardData.clearData();
    window.clipboardData.setData("Text", document.getElementById('txtacpy').value);
  } 
}
function paste() {
  if(window.clipboardData) {   
    document.getElementById('txtapaste').value = window.clipboardData.getData("Text");
  } 
}

当CodeMirror编辑器专注时,我会致电:

paste();

但是什么也没发生!浏览器是移动野生动物园。如何解决问题?

在大多数浏览器中不支持此功能,因为安全性问题不允许网页访问剪贴板。这不仅是移动野生动物园。在大多数浏览器(例如Chrome或Firefox)中,您不会发现它得到支持。

有些人使用称为ZClip/Zeroclippoard的Flash Work-Around,它确实允许复制到剪贴板,但仅从直接用户单击Flash对象。这显然不是移动野生动物园中的选择。

如果您只想在页面中移动数据,则不必使用系统剪贴板来执行此操作 - 您可以为数据创建自己的保留区域(JavaScript变量)并放置数据复制后,然后从那里从那里取回糊状物。然后,您使用普通的DOM函数(不是复制/粘贴函数)从字段获取数据或将数据放入字段。

最新更新