您的位置:首页技术文章
文章详情页

javascript - 兼容主流浏览器前提,如何实现实现剪贴板功能,用js。

【字号: 日期:2022-11-11 14:24:19浏览:49作者:猪猪

问题描述

PS:初步发现是浏览器兼容问题,只有IE支持clipboardData,那么问题来了,有没有更优的方法?问题阐述:global.html里有一个“id=biao1”的iframe,现欲通过js抽取iframe中p标签的文本内容并复制到剪贴板,本例欲采用clipboardData.setData方法并出现如下报错信息,请大牛指点。

报错信息:

zhiliangbaobiao.js:8 Uncaught TypeError: Cannot read property ’setData’ of undefinedat copysql1 (zhiliangbaobiao.js:8)at HTMLInputElement.onclick (global.html:172)

global.html 主要源码

<iframe src='https://www.haobala.com/wenda/test00.html' frameborder='0' style='width:100%;height:100%;'></iframe><input onclick='copysql1()' value='点击复制代码' type='button'>

zhiliangbaobiao 主要源码

var ifr = document.getElementById(’biao1’);var ifrwin = ifr.window || ifr.contentWindow;var temp = ifrwin.document.getElementsByTagName('p').item(0).innerText;window.clipboardData.setData('text',temp);

问题解答

回答1:

用flash或者直接让用户手动复制。

回答2:

可以使用 clipboard.js 这个类库(注意浏览器兼容性)或者直接上 Flash。

标签: JavaScript