html 复制标签内文本的按钮的 js 实现【学习过程】【浏览器兼容】
2015-05-27 15:41
866 查看
想要实现div中的文字内容一键复制到剪切板中,一开始在网上search到两种方案:
方案1:
此方法仅适用于text属性的如 等对象,对于div则没用。也试了下用 s.firstChild 来找文本对象,无法找到,提示undefined。而改成段落对象后,则和div一样,可以alert出文本,但无法选中。
方案2:
调用部分:
网上都说这个方法是兼容IE,chrome,火狐的,然而我用的chrom测试出来都不对。一直以为是 div 内容提取的问题,后来注释掉该句之后用 alert(obj.textContent); 显示可以成功,说明。后来针对性去查才发现如今chrome和火狐都因为安全问题而不兼容window.clipboardData.setData(),即不兼容复制操作。
那么问题来了,真的没有办法有效一键复制我们想复制的内容了吗?
不是的!让我们有请 ZeroClipboard~~
详细见参考资料~
等试明白了再更新
参考资料:
http://www.jb51.net/article/39844.htm
http://www.cnblogs.com/PeunZhang/p/3324727.html
方案1:
<script type="text/javascript"> function jsCopy(s){ var obj=document.getElementById(s); obj.select(); //选择对象 document.execCommand("Copy"); //执行浏览器复制命令 alert("已复制,可贴粘。"); } </script>
此方法仅适用于text属性的如 等对象,对于div则没用。也试了下用 s.firstChild 来找文本对象,无法找到,提示undefined。而改成段落对象后,则和div一样,可以alert出文本,但无法选中。
方案2:
<script type="text/javascript"> function jsCopy(s){ var obj=document.getElementById(s);//对象是content : window.clipboardData.setData("Text", obj.innerHTML); alert("已复制,可贴粘。"); } </script>
调用部分:
<div class="CollapsiblePanelContent" id='best_ans'> $if ansrs.best.text!=None: $ansrs.best.text $else: <br/> </div> <a href="#" onclick="jsCopy('best_ans');return false;"> <!-- img class = "middle" src="/static/img/copy.png" width="18" height="18" alt="copy"/ --> copy </a> <textarea name = 'b' id = 'b'> best ooo </textarea>
网上都说这个方法是兼容IE,chrome,火狐的,然而我用的chrom测试出来都不对。一直以为是 div 内容提取的问题,后来注释掉该句之后用 alert(obj.textContent); 显示可以成功,说明。后来针对性去查才发现如今chrome和火狐都因为安全问题而不兼容window.clipboardData.setData(),即不兼容复制操作。
那么问题来了,真的没有办法有效一键复制我们想复制的内容了吗?
不是的!让我们有请 ZeroClipboard~~
详细见参考资料~
等试明白了再更新
参考资料:
http://www.jb51.net/article/39844.htm
http://www.cnblogs.com/PeunZhang/p/3324727.html
相关文章推荐
- js 实现复制到剪切板 复制按钮兼容各大浏览器
- JS实现文本复制功能,兼容主流浏览器
- js实现点击复制当前文本到剪贴板功能(兼容所有浏览器)
- js实现点击复制当前文本到剪贴板功能(兼容所有浏览器)
- clipboard.js 实现 点击按钮复制粘贴兼容ios 安卓 pc浏览器 zclip复制插件需要Flash支持
- 【转】js实现复制到剪贴板功能,兼容所有浏览器
- js实现复制到剪贴板功能,兼容所有浏览器
- 【转】js实现复制到剪贴板功能,兼容所有浏览器
- js实现复制到剪贴板功能,兼容所有浏览器-下载下来demo一看就明白了
- js实现复制到剪贴板功能,兼容所有浏览器
- JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
- JS实现复制功能,兼容各大主流浏览器复制神器 ZeroClipboard
- 原生 js 实现点击按钮复制文本
- js实现复制到剪贴板功能,兼容所有浏览器
- JS实现复制到剪贴板功能,兼容所有浏览器
- 【原】js实现复制到剪贴板功能,兼容所有浏览器
- 【转】js实现复制到剪贴板功能,兼容所有浏览器
- js实现复制到剪贴板功能,兼容所有浏览器
- js操作剪贴板,实现点击按钮复制文本功能
- JS实现内容复制,兼容大部分浏览器,safari不兼容。