Firefox中通过JavaScript复制数据到剪贴板(Copy to Clipboard 跨浏览器版)


Posted in Javascript onNovember 22, 2013
<!doctype html public "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="Keywords" content="YES!B/S!" />
<meta name="Description" content="This page is from http://Justinyoung.cnblogs.com" />
<title>CSS/Javascript demo</title>
<script type="text/javascript" language="javascript" >
    function test(){
        copyToClipboard("dddd");
    }
    copyToClipboard = function(txt) {
if(window.clipboardData) {
   window.clipboardData.clearData();
   window.clipboardData.setData("Text", txt);
} else if(navigator.userAgent.indexOf("Opera") != -1) {
window.location = txt;
} else if (window.netscape) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
} catch (e) {
alert("您的firefox安全限制限制您进行剪贴板操作,请打开'about:config'将signed.applets.codebase_principal_support'设置为true'之后重试");
return false;
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip)
return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans)
return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var copytext = txt;
str.data = copytext;
trans.setTransferData("text/unicode",str,copytext.length*2);
var clipid = Components.interfaces.nsIClipboard;
if (!clip)
return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
}
}
</script>
</head>
<body>
 <button onclick="test();">复制到粘贴板</button>
</body>
</html>

说明:Firefox的默认安全限制不允许通过JavaScript复制到剪贴板,需要提示用户修改Firefox的设置。修改方法是打开"about:config"将"signed.applets.codebase_principal_support"设置为"true"。

Javascript 相关文章推荐
用js+xml自动生成表格的东西
Dec 21 Javascript
[推荐]javascript 面向对象技术基础教程
Mar 03 Javascript
初窥JQuery(二) 事件机制(1)
Nov 25 Javascript
用jquery等比例控制图片宽高的具体实现
Jan 28 Javascript
jquery.Ajax()方法调用Asp.Net后台的方法解析
Feb 13 Javascript
js(JavaScript)实现TAB标签切换效果的简单实例
Feb 26 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
Feb 27 Javascript
JavaScript静态类型检查工具FLOW简介
Jan 06 Javascript
webpack打包单页面如何引用的js
Jun 07 Javascript
AngularJS service之select下拉菜单效果
Jul 28 Javascript
vue.js 中使用(...)运算符报错的解决方法
Aug 09 Javascript
AngularJS实现的鼠标拖动画矩形框示例【可兼容IE8】
May 17 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
Nov 22 #Javascript
用正则表达式替换图片地址img标签
Nov 22 #Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 #Javascript
jquery ajax中使用jsonp的限制解决方法
Nov 22 #Javascript
javascript禁用Tab键脚本实例
Nov 22 #Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
Nov 22 #Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
Nov 22 #Javascript
You might like
用定制的PHP应用程序来获取Web服务器的状态信息
2006/10/09 PHP
基于mysql的bbs设计(五)
2006/10/09 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
浅谈PHP中的那些魔术常量
2020/12/02 PHP
Aster vs KG BO3 第三场2.18
2021/03/10 DOTA
Js操作树节点自动折叠展开的几种方法
2014/05/05 Javascript
解决JS请求服务器gbk文件乱码的问题
2015/10/16 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
jquery对象和DOM对象的相互转换详解
2016/10/18 Javascript
vuejs事件中心管理组件间的通信详解
2017/08/09 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
angular之ng-template模板加载
2017/11/09 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
[02:24]DOTA2亚洲邀请赛 NAVI战队出场宣传片
2015/02/07 DOTA
[04:03][TI9趣味短片] 小鸽子茶话会
2019/08/20 DOTA
Python中关于字符串对象的一些基础知识
2015/04/08 Python
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Python实例一个类背后发生了什么
2016/02/09 Python
python登录并爬取淘宝信息代码示例
2017/12/09 Python
python3爬取各类天气信息
2018/02/24 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
css3实现元素环绕中心点布局的方法示例
2019/01/15 HTML / CSS
HTML5 绘制图像(上)之:关于canvas元素引领下一代web页面的问题
2013/04/24 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
初中生三年学习生活的自我评价
2013/11/03 职场文书
讲文明知礼仪演讲稿
2014/09/13 职场文书
企业务虚会发言材料
2014/10/20 职场文书
史上最牛的辞职信
2015/02/28 职场文书
我的长征观后感
2015/06/09 职场文书
2016元旦晚会主持人开场白和结束语
2015/12/03 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
家庭教育教师培训学习体会
2016/01/14 职场文书
排查并解决MySQL生产库内存使用率高的报警
2022/04/11 MySQL