如何使用JavaScript从网页中获取突出显示的文本

阿尔塔夫·阿克巴尔(Altaaf Ackbar)

我正在尝试为chrome做一个简单的测试扩展。这是应该发生的情况:

  1. 用户突出显示一些文本
  2. 用户按下扩展名,然后从弹出窗口中按下按钮
  3. 有一个警报显示突出显示的文本

问题是按下扩展按钮时,文本将被取消选择,因此警报什么也没有显示。我已经阅读了许多与此问题相关的StackOverflow答案,但是我是JS新手,无法弄清楚。

这些是我的文件:

manifest.json

{
"name": "Test",
"version": "1.0",
"manifest_version": 2,
"content_scripts": [
    {
        "matches": ["<all_urls>"],
        "js":["content.js"],
    }
],
"browser_action":{
    "default_popup": "popup.html",
    "default_title": "Text Finder"
}


}

popup.html

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>

    <button>Show Text</button>
    <script src="popup.js" charset="ut-8"></script>


</body>
</html>

popup.js

function getSelectionText() {
var text = "";
if (window.getSelection) {
    text = window.getSelection().toString();
} else if (document.selection && document.selection.type != "Control") {
    text = document.selection.createRange().text;
}

return text
}

document.addEventListener('DOMContentLoaded', function () {
 document.querySelector('button').addEventListener('click', onclick, false)
 function onclick () {
    chrome.tabs.query({currentWindow: true, active: true},
    function (tabs) {
        chrome.tabs.sendMessage(tabs[0].id, getSelectionText())
    }
    )
 }
  }, false)

content.js

chrome.runtime.onMessage.addListener(function (request){
alert(request)
})
哈马德·阿赫万德

更好的方法是在上下文菜单中添加一个项目。为此,用户将选择某些内容,然后单击鼠标右键,然后选择您的菜单条目以将选择内容发送到您的分机。

chrome.contextMenus.create(
  id : 'selectionGetter',
  title : 'send selected text',
  contexts : ['selection'],
);

chrome.contextMenus.onClicked.addListener(function (info,tab) {
  //showing alert would require you to send a message to the active tab,
  //handle it in the contentscript and send alert from there

  //alternate lazy usage example:
  new Notification('My extension',{
    body : 'you selected: '+info.selectionText,
  });
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从 sensenet 中的内容搜索中获取突出显示的文本

来自分类Dev

如何在javascript中突出显示搜索文本记录?

来自分类Dev

使用jQuery而不是JavaScript如何突出显示textarea中的单行文本

来自分类Dev

如何使用JavaScript / jQuery选择(突出显示)表中的所有文本?

来自分类Dev

如何使用javascript阻止用户突出显示任何文本?

来自分类Dev

如何突出显示网页上的搜索匹配文本

来自分类Dev

如何使用Sublime Text删除突出显示的文本中的空格?

来自分类Dev

如何使用setFocusable(false)在JTextPane中突出显示文本?

来自分类Dev

如何使用 Swift 在 WebView 中查找和突出显示文本

来自分类Dev

如何突出显示和使用文本框中突出显示的行?

来自分类Dev

如何从文本区域中突出显示的文本中获取邻居字符?

来自分类Dev

使用JXA从所选文本/突出显示的文本中获取字符串

来自分类Dev

如何在乳胶中突出显示文本

来自分类Dev

如何突出显示输入字段中的文本?

来自分类Dev

如何取消突出显示JTextPane中的文本

来自分类Dev

URL中的`#:〜:text =`如何突出显示文本?

来自分类Dev

如何在Calibre中突出显示文本?

来自分类Dev

如何取消突出显示JTextPane中的文本

来自分类Dev

如何在乳胶中突出显示文本

来自分类Dev

如何在qpdfview中突出显示文本?

来自分类Dev

如何使用WebDriver在网页上找出突出显示的元素?

来自分类Dev

如何使用C ++从网页获取文本?

来自分类Dev

在UITextView中获取CGRect文本以使用CALayer突出显示

来自分类Dev

如何使用php curl获取网页并显示该网页html?

来自分类Dev

如何使用JavaScript在段落中获取文本

来自分类Dev

如何使用javascript查找和突出显示即使在某些元素中标记的文本?

来自分类Dev

如何在运行时使用 javascript 和 html 突出显示文本并标记它

来自分类Dev

文本解析然后在javascript中的textarea中突出显示

来自分类Dev

网页中的VBScript语法突出显示

Related 相关文章

  1. 1

    如何从 sensenet 中的内容搜索中获取突出显示的文本

  2. 2

    如何在javascript中突出显示搜索文本记录?

  3. 3

    使用jQuery而不是JavaScript如何突出显示textarea中的单行文本

  4. 4

    如何使用JavaScript / jQuery选择(突出显示)表中的所有文本?

  5. 5

    如何使用javascript阻止用户突出显示任何文本?

  6. 6

    如何突出显示网页上的搜索匹配文本

  7. 7

    如何使用Sublime Text删除突出显示的文本中的空格?

  8. 8

    如何使用setFocusable(false)在JTextPane中突出显示文本?

  9. 9

    如何使用 Swift 在 WebView 中查找和突出显示文本

  10. 10

    如何突出显示和使用文本框中突出显示的行?

  11. 11

    如何从文本区域中突出显示的文本中获取邻居字符?

  12. 12

    使用JXA从所选文本/突出显示的文本中获取字符串

  13. 13

    如何在乳胶中突出显示文本

  14. 14

    如何突出显示输入字段中的文本?

  15. 15

    如何取消突出显示JTextPane中的文本

  16. 16

    URL中的`#:〜:text =`如何突出显示文本?

  17. 17

    如何在Calibre中突出显示文本?

  18. 18

    如何取消突出显示JTextPane中的文本

  19. 19

    如何在乳胶中突出显示文本

  20. 20

    如何在qpdfview中突出显示文本?

  21. 21

    如何使用WebDriver在网页上找出突出显示的元素?

  22. 22

    如何使用C ++从网页获取文本?

  23. 23

    在UITextView中获取CGRect文本以使用CALayer突出显示

  24. 24

    如何使用php curl获取网页并显示该网页html?

  25. 25

    如何使用JavaScript在段落中获取文本

  26. 26

    如何使用javascript查找和突出显示即使在某些元素中标记的文本?

  27. 27

    如何在运行时使用 javascript 和 html 突出显示文本并标记它

  28. 28

    文本解析然后在javascript中的textarea中突出显示

  29. 29

    网页中的VBScript语法突出显示

热门标签

归档