出于某种原因,当我尝试访问 browser_action
上的 default_popup
的 DOM 时,我无法...没有 js 错误,看起来就像该脚本在与我预期不同的上下文中运行。
以下是来自 manifest.json
、browser_action.html
和 browser_action.js
manifest.json:
"browser_action": {
"default_icon": "icons/icon.png",
"default_title": "title goes here",
"default_popup": "src/browser_action/browser_action.html"
},
browser_action.html:
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="browser_action.js"></script>
<div id="mainPopup">
<h1 id="title">Main Title</h1>
<img src="http://placehold.it/700x350" alt="chart" id="chart" />
</div>
browser_action.js:
(function(){
var $title = $('#title');
console.log($title.length); // 0
})();
最佳答案
等待 DOM 自行准备:
$(function() {
var $title = $('#title');
console.log($title.length);
});
或者,将脚本文件向下移动:
<div id="mainPopup">
<h1 id="title">Main Title</h1>
<img src="http://placehold.it/700x350" alt="chart" id="chart" />
</div>
...
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="browser_action.js"></script>
</body>
关于javascript - Chrome 扩展 : How to manipulate browser_action. default_popup DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42746207/