相关疑难解决方法(0)

Chrome扩展程序如何将数据从内容脚本发送到popup.html

我知道这已经在很多帖子中被问过,但说实话,我没有得到它们.我是JavaScript,Chrome扩展程序以及所有内容的新手,我有这个课程作业.所以我需要创建一个插件,使用跨域请求计算任何给定页面上的DOM对象.到目前为止,我已经能够使用Chrome Extension API实现这一目标.现在问题是我需要在contentScript.js文件中的popup.html页面上显示数据.我不知道该怎么做我已经尝试阅读文档但是在chrome中发送消息我只是无法理解该怎么做.

以下是到目前为止的代码.

的manifest.json

{
"manifest_version":2,

"name":"Dom Reader",
"description":"Counts Dom Objects",
"version":"1.0",

"page_action": {
    "default_icon":"icon.png",
    "default_title":"Dom Reader",
    "default_popup":"popup.html"
},

"background":{
    "scripts":["eventPage.js"],
    "persistent":false
},

"content_scripts":[
    {
        "matches":["http://pluralsight.com/training/Courses/*", "http://pluralsight.com/training/Authors/Details/*",                                          "https://www.youtube.com/user/*", "https://sites.google.com/site/*", "http://127.0.0.1:3667/popup.html"],
        "js":["domReader_cs.js","jquery-1.10.2.js"]
        //"css":["pluralsight_cs.css"]
    }
],

"permissions":[
    "tabs",
    "http://pluralsight.com/*",
    "http://youtube.com/*",
    "https://sites.google.com/*",
    "http://127.0.0.1:3667/*"
]
Run Code Online (Sandbox Code Playgroud)

popup.html

<!doctype html>
<html>

    <title> Dom Reader </title>    
    <script src="jquery-1.10.2.js" type="text/javascript"></script>
    <script src="popup.js" type="text/javascript"></script>

<body>
    <H1> Dom Reader </H1>
    <input type="submit" id="readDom" value="Read DOM Objects" />

   <div id="domInfo">

    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

eventPage.js

var value1,value2,value3;

chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery google-chrome google-chrome-extension

82
推荐指数
3
解决办法
8万
查看次数

仅选择直接包含文本的元素

所以我有这样的事情:

<div class="main">
  <div class="useless">
    text I don't want.    
  </div>
  <div class="useless">
    text I don't want.    
  </div>
  <div class="narrow">
    text I'm searching for
  </div>
  <div class="useless">
    text I don't want.    
  </div>
  <div class="useless">
    text I don't want.    
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

使用jQuery的可爱:contains选择器,我可以搜索关键字,但它将返回父级和子级.

我希望它只返回直接包含我正在搜索的单词的元素.

Stackoverflow有用地建议将此链接作为先前的尝试,但它似乎非常笨重,因为它爬行所有dom节点并且需要大量不清楚的代码.

jquery

10
推荐指数
1
解决办法
1237
查看次数