我们从 12.0 升级到 FF 19.0,剪贴板访问受到完全限制,我无法从剪贴板获取数据。
在 FF 的早期版本中,以下方法曾经有效。
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); var clip = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard); var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
用例:
对于输入文本字段,当粘贴多行文本时,我想用我选择的分隔符替换默认空格字符作为分隔符。
例如:test1\n test2\n test3
在 FF 的输入文本字段中粘贴此文本时,看到 O/p:test1 test2 test3 O/p required: test1,test2,test3(当分隔符为 ',' 时) test1;test;test3(当分隔符为 ';' 时)
要求:
粘贴的文本甚至在粘贴到文本字段之前就应该被修改,唯一的方法似乎是访问剪贴板。
我尝试了以下链接,但没有帮助。
https://support.mozilla.org/en-US/questions/948379
http://stackoverflow.com/questions/14809226/cut-copy-and-paste-is-not-working-for-firefox-15-onwords
我尝试修改用户首选项以允许剪贴板不起作用。
user_pref("capability.policy.policynames", "allowclipboard");
user_pref("capability.policy.allowclipboard.sites", mydomain);
user_pref("capability.policy.allowclipboard.Clipboard.cutcopy", "allAccess");
我不应该使用 Flash 对象来访问剪贴板(ZClip 或 ZeroClipboard)。
感谢您的回复。提前致谢。