jav*_*y79 5 javascript firefox greasemonkey
我正在尝试编写一个JavaScript脚本添加到greasemonkey,它在元素后添加一个按钮.onClick for this按钮应将parents元素文本复制到键盘.我已经看到很多将已经选择的文本复制到剪贴板的示例,例如:
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function copyit(theField) {
var selectedText = document.selection;
if (selectedText.type == 'Text') {
var newRange = selectedText.createRange();
theField.focus();
theField.value = newRange.text;
} else {
alert('Alert: Select The text in the textarea then click on this button');
}
}
// End -->
</script>
<input onclick="copyit(this.form.text_select)" type="button" value="Click Here to Copy the Highlighted Text" name="copy_button">
Run Code Online (Sandbox Code Playgroud)
在这里找到.
我还发现您可以在输入元素中选择文本.我尝试过将两种技术结合起来,以及其他许多技术尚未解决.我甚至不确定为什么上面的代码复制到剪贴板.有人有解决方案吗?
如果你花时间阅读完整的文章,作者说这对Firefox不起作用......
实际上,我认为它甚至不适用于IE,因为它与剪贴板没有任何关系!
有一种使用Flash的技术,因为默认情况下,Firefox出于安全原因禁止剪贴板访问.
否则,复制的经典方法是:
var tc = textToCopy.replace(/\n\n/g, '\n');
if (window.clipboardData) // IE
{
window.clipboardData.setData("Text", tc);
}
else
{
unsafeWindow.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
const clipboardHelper = Components.classes
["@mozilla.org/widget/clipboardhelper;1"].
getService(Components.interfaces.nsIClipboardHelper);
clipboardHelper.copyString(tc);
}
Run Code Online (Sandbox Code Playgroud)
启用复制后(对于给定的站点).
| 归档时间: |
|
| 查看次数: |
13754 次 |
| 最近记录: |