复制和粘贴的js代码(IE/FireFox/mozilla/ns)2010-01-03Jscript有些属性其实挺好的,可惜就是只是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);
} alert("Following info was copied to your clipboard:
" + 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 settingsto do this add this line to your prefs.js file in your firefox/mozilla user profile directoryuser_pref("signed.applets.codebase_principal_support", true);or change it from within the browser with calling the "about:config" page