如果document.execCommand被正式删除,用什么可以实现复制到剪贴板功能呢?
如果document.execCommand被正式删除,用什么可以实现复制到剪贴板功能呢?
回答
暂时没有可用的替代方法。
确切的说这个 API 本来也不是标准 API,而是一个 IE 的私有 API,在 IE9 时被引入,后续的若干年里陆续被 Chrome / Firefix / Opera 等浏览器也做了兼容支持,但始终没有形成标准。
这个 API 被废弃的主要原因第一个就是安全问题,在用户未经授权的情况下就可以执行一些敏感操作,这就很恐怖了;第二个问题是因为这是一个同步方法,而且操作了 DOM 对象,会阻塞页面渲染和脚本执行,因当初还没 Promise,所以没设计成异步,挖坑了。新设计的 API 肯定是要解决这两个问题。
不过 W3C 也正在拟草案,大概率以后会引入一个叫 Clipboard
的类型(Chrome 66.0 开始已经有这个类型了,不过还不能用,相关 API 仅存在于文档中),用来处理跟剪贴版相关的操作,不过之后肯定会是像现在获取地理位置啊、麦克风啊什么的,浏览器先会弹出一个对话框让用户授权,你才能读写剪贴板了。
- W3C Clipboard 草案:https://www.w3.org/TR/clipboa...
- Google Clipboard API 文档:https://developers.google.com...
- MDN Clipboard API 文档:https://developer.mozilla.org...
以上是 如果document.execCommand被正式删除,用什么可以实现复制到剪贴板功能呢? 的全部内容, 来源链接: utcz.com/a/20864.html