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();

  }

  }