我有一段时间试图将文本插入HTML文本区域,或者使用Chrome扩展程序从剪贴板中获取数据(使用上下文菜单)。
我目前在manifest.json文件中拥有这些权限:
"permissions": [
"contextMenus",
"clipboardRead",
"clipboardWrite"],
我的javascript技能仍然非常基础,但是尽管花费了一段时间,我似乎无法克服document.execCode('paste')的安全问题或我在文本框中插入文本所需的特定语法
以编程方式,这是我想象的功能:
所以如果textarea包含:
I eat peas
并且剪贴板包含:
and cook
并且用户选择了“eat”,然后该函数被激活,textarea中的字符串将被更改为:
I eat and cook peas
正确的道路上的任何帮助都会受到赞赏,最好使用直接的JS而不是JQuery。
答案 0 :(得分:0)
我在我的扩展程序中使用了类似的内容:https://github.com/horejsek/specialCharacters。我希望这有帮助。
答案 1 :(得分:0)
我不知道Chrome扩展程序如何访问剪贴板,所以我想你在clipboard
变量中有剪贴板字符串。然后,您可以通过window.getSelection
功能
var selection = new window.getSelection,
selectedText = selection.anchorNode.data,
textarea = window.document.querySelector('textarea');
休息很简单只需两个字符串:
textarea.value = textarea.value.replace(selectedText, clipboard);