我正在尝试使用 Chrome 扩展的内容脚本从页面访问具有特定类名的元素。到目前为止,内容脚本可以使用 document.getElementById() 成功找到具有特定 id 的元素,但使用 document.getElementsByClassName() 或 jQuery 的 $(".className") 不会产生任何结果。为了测试,我使用“标题”作为我的类名,并且我在其上运行扩展的每个网站都导致数组长度为 0。有什么想法我可能会遗漏吗?这是我一直在测试的:
manifest.json
=================
{
"name": "Sample Extension",
"version": "0.0.1",
"description": "Sample extension",
"icons": {"128": "icon.png"},
"permissions": [
"tabs", "<all_urls>"
],
"browser_action": {
"default_icon": "browseraction.png",
"default_title": "Sample",
"popup": "popup.html"
},
"content_scripts": [
{
"matches": [ "<all_urls>" ],
"js": ["scripts/contentscript.js"],
"run_at": "document_end"
}
]
}
contentscript.js
===================
var elems = document.getElementsByClassName("header");
alert( elems.length );