• 复制和粘贴的js代码(IE/FireFox/mozilla/ns)


    Jscript有些属性其实挺好的,可惜就是只是IE支持,比如复制和粘贴的属性

    下面这段复制和粘贴的JAVASCRIPT的代码倒是可以支持IE/FireFox/mozilla/ns,,老外站点上看来的

    只是在firefox下需要修改一下about:config的一个属性

    <script language="javascript" type="text/javascript">
    <!--
    function copy_clip(meintext)
    {
     if (window.clipboardData)
      {

      // the IE-manier
      window.clipboardData.setData("Text", meintext);

      // waarschijnlijk niet de beste manier om Moz/NS te detecteren;
      // het is mij echter onbekend vanaf welke versie dit precies werkt:
      }
      else if (window.netscape)
      {

      // dit is belangrijk maar staat nergens duidelijk vermeld:
      // you have to sign the code to enable this, or see notes below
      netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');

      // maak een interface naar het clipboard
      var clip = Components.classes['@mozilla.org/widget/clipboard;1']
             .createInstance(Components.interfaces.nsIClipboard);
      if (!clip) return;

      // maak een transferable
      var trans = Components.classes['@mozilla.org/widget/transferable;1']
              .createInstance(Components.interfaces.nsITransferable);
      if (!trans) return;

      // specificeer wat voor soort data we op willen halen; text in dit geval
      trans.addDataFlavor('text/unicode');

      // om de data uit de transferable te halen hebben we 2 nieuwe objecten
      // nodig om het in op te slaan
      var str = new Object();
      var len = new Object();

      var str = Components.classes["@mozilla.org/supports-string;1"]
             .createInstance(Components.interfaces.nsISupportsString);

      var copytext=meintext;

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

      }
      alert("Following info was copied to your clipboard:\n\n" + meintext);
      return false;
    }
    //-->
    </script>

    notes about security:

    a cause of the tight security settings in mozilla you have to sign the javascript to make it work another way is to change your firefox/mozilla settings

    to do this add this line to your prefs.js file in your firefox/mozilla user profile directory

    user_pref("signed.applets.codebase_principal_support", true);

    or change it from within the browser with calling the "about:config" page

  • 相关阅读:
    python自动更新chromedriver与chrome兼容
    Python生成exe可执行文件
    windows下安装python 且 安装pip
    python运行的时候报错line 192, in _run_module_as_main return _run_code(code, main_globals, None 解决方案
    log4j2配置文件log4j2.xml
    log4j配置文件中的additivity属性
    Druid作连接池的数据库的主从动态切换
    Win10进入安全模式的方法
    Win10复制文件或是从网站另存图片提示“客户端没有所需的特权”怎么解决?
    druid添加log4j2
  • 原文地址:https://www.cnblogs.com/luluping/p/1730699.html
Copyright © 2020-2023  润新知