JS复制到剪贴板示例代码

复制到剪贴板的实现方法有很多,在本文将为大家详细介绍下使用js是如何实现的,感兴趣的朋友不要错过
代码如下:

/*
* 复制到剪贴板
*
* */

function copyToClipboard(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) {
showAlert("被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
}
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);
showMessage("复制成功!");
}else if(window.navigator.userAgent.indexOf("Chrome") !== -1 ){
var dialog = $("#sanwn_clipboardDialog");
if(dialog.length==0){
var text = "<div id='xxx_clipboardDialog' title='请按Ctrl+C复制内容到剪贴板'><input type='text' id='sanwn_clipboardTxt' value='"+txt+"'></div>";
$("body").append( $(text));
$("#sanwn_clipboardDialog").omDialog({
autoOpen: false,
height: 140,
modal: true
});
dialog =$( "#sanwn_clipboardDialog");
}
$("#sanwn_clipboardTxt").val(txt);

$("#sanwn_clipboardDialog").omDialog("open");
document.getElementById("sanwn_clipboardTxt").select();
}
}

你可能感兴趣的:(浏览器,function,Opera,剪贴板,地址栏)