单击复制文字兼容各浏览器的完美解决方案


Posted in Javascript onJuly 04, 2013

单击复制文字的js。找了很久,由于之前没有接触过,完全不知道兼容ie及标准dom浏览器,不仅仅要通过js,而且需要flash的帮忙。clipboard.swf这个在网上都有下载.

ie允许访问剪贴板。window.clipboardData可以访问
但是标准dom。看了一些文章说的都是用flash设置隐藏。但是flash10是不支持。
但是,还有个方法是可行的,固记录一下,以下方法支持标准dom.

(function () { 
window['Util'] = { 
CACHE:{}, 
getText : function(){ 
return Util.CACHE.CLIPBOARD_TEXT; 
}, 
successHide : function(){ 
alert("复制北海365网招聘邮件地址!"); 
}, 
Copy : function (pStr,hasReturn, isdo) { 
var html = []; 
html.push('<object type="application/x-shockwave-flash" data="clipboard.swf?gettext=Util.getText&success=Util.successHide" width="50" height="40" style="position:relative;top:11px;left:-50px;" id="ff_clipboard_swf">'); 
html.push('<param name="quality" value="high" />'); 
html.push('<param name="allowScriptAccess" value="sameDomain" />'); 
html.push('<param name="allowFullScreen" value="true" />'); 
html.push('<param name="wmode" value="transparent" />'); 
html.push('</object>'); 
var yu=document.getElementById('copy').innerHTML; 
document.getElementById('copy').innerHTML=yu+html.join(''); 
Util.CACHE.CLIPBOARD_TEXT = pStr; 
} 
} 
Util.Copy('zhaopin@beihai365.com '); 
})();


如果要兼容ie。还得加上

if (window.clipboardData) { 
window.clipboardData.setData("Text",pStr); 
Util.successHide(); 
}


最后这样能实现单击复制文字,并且兼容各浏览器。记住。swf的路径一定要对!如果不对是不出现手型的,这是特征。

(function () { 
window['Util'] = { 
CACHE:{}, 
getText : function(){ 
return Util.CACHE.CLIPBOARD_TEXT; 
}, 
successHide : function(){ 
alert("复制北海365网招聘邮件地址!"); 
}, 
Copy : function (pStr,hasReturn, isdo) { 
var copy=document.getElementById('copy'); 
if (window.clipboardData) { 
copy.onclick=function(){ 
window.clipboardData.setData("Text",pStr); 
Util.successHide(); 
} 
} else { 
var html = []; 
html.push('<object type="application/x-shockwave-flash" data="clipboard.swf?gettext=Util.getText&success=Util.successHide" width="50" height="40" style="position:relative;top:11px;left:-50px;" id="ff_clipboard_swf">'); 
html.push('<param name="quality" value="high" />'); 
html.push('<param name="allowScriptAccess" value="sameDomain" />'); 
html.push('<param name="allowFullScreen" value="true" />'); 
html.push('<param name="wmode" value="transparent" />'); 
html.push('</object>'); 
var yu=copy.innerHTML; 
copy.innerHTML=yu+html.join(''); 
Util.CACHE.CLIPBOARD_TEXT = pStr; 
} 
} 
} 
Util.Copy('zhaopin@beihai365.com '); 
})();
Javascript 相关文章推荐
JS实现兼容性好,带缓冲的动感网页右键菜单效果
Sep 18 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
Dec 28 Javascript
JavaScript实现in-place思想的快速排序方法
Aug 07 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
Nov 07 Javascript
Vue.js第一天学习笔记(数据的双向绑定、常用指令)
Dec 01 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
Jan 06 Javascript
JS中的三个循环小结
Jun 20 Javascript
vue移动端裁剪图片结合插件Cropper的使用实例代码
Jul 10 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
Jan 02 Javascript
Vue.js添加组件操作示例
Jun 13 Javascript
JavaScript模块管理的简单实现方式详解
Jun 15 Javascript
vue+elementUI实现表格列的显示与隐藏
Apr 13 Vue.js
把input初始值不写value的具体实现方法
Jul 04 #Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
Jul 04 #Javascript
简单实用jquery版三级联动select示例
Jul 04 #Javascript
原生javascript和jquery判断浏览器版本等信息
Jul 04 #Javascript
js将控件隐藏的方法及display属性介绍
Jul 04 #Javascript
Jquery多选框互相内容交换的实例代码
Jul 04 #Javascript
js局部刷新页面时间具体实现
Jul 04 #Javascript
You might like
php无限极分类实现的两种解决方法
2013/04/28 PHP
Thinkphp5结合layer弹窗定制操作结果页面
2017/07/07 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
JavaScript国旗变换效果代码
2008/08/13 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
jQuery获取iframe的document对象的方法
2014/10/10 Javascript
Node.js实用代码段之获取Buffer对象字节长度
2016/03/17 Javascript
jQuery实现标签页效果实战(4)
2017/02/08 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
2017/06/15 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
2018/08/08 Javascript
ionic使用angularjs表单验证(模板验证)
2018/12/12 Javascript
示例vue 的keep-alive缓存功能的实现
2018/12/13 Javascript
详解vuex中action何时完成以及如何正确调用dispatch的思考
2019/01/21 Javascript
Python实现对比不同字体中的同一字符的显示效果
2015/04/23 Python
Python第三方库的安装方法总结
2016/06/06 Python
使用python读取csv文件快速插入数据库的实例
2018/06/21 Python
python暴力解压rar加密文件过程详解
2019/07/05 Python
python框架django项目部署相关知识详解
2019/11/04 Python
python3 常见解密加密算法实例分析【base64、MD5等】
2019/12/19 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
django数据模型中null和blank的区别说明
2020/09/02 Python
python中温度单位转换的实例方法
2020/12/27 Python
纯CSS3实现扇形动画菜单(简化版)实例源码
2017/01/17 HTML / CSS
HTML5移动开发图片压缩上传功能
2016/11/09 HTML / CSS
HTML5单选框、复选框、下拉菜单、文本域的实现代码
2020/12/01 HTML / CSS
世界上最大的曲棍球商店:Pro Hockey Life
2017/10/30 全球购物
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
简述synchronized和java.util.concurrent.locks.Lock的异同
2014/12/08 面试题
倡议书格式范文
2014/04/14 职场文书
选秀节目策划方案
2014/06/06 职场文书
五心教育心得体会
2014/09/04 职场文书
2014审计局领导班子民主生活会对照检查材料思想汇报
2014/09/20 职场文书
2014年政风行风自查自纠报告
2014/10/21 职场文书
教师廉洁自律个人总结
2015/02/10 职场文书
大国崛起观后感
2015/06/02 职场文书
画展观后感
2015/06/17 职场文书