我想访问网页
内的所有元素,这些元素将这些表单加载到
,
然后我在下面创建了此代码,但是没有用。
不是以 iframe
开头的页面已经可以正常工作了。
如何解决这个问题?
manifest.json
{
“ name”:“ Chrome Webrequest测试”,
“ version”:“ 0.1”,
“ description”:“对Webrequest的测试”,
“ manifest_version”:2
“权限”:[
“标签”,“背景”,“ activeTab”,“ ”,“ webNavigation”,“ webRequest”,“ webRequestBlocking”,“ http:// * / *”,“ https:// * / *”, “ *:// * / *”
],
“背景”: {
“ scripts”:[“ background.js”],
“持续”:真实
},
“ browser_action”:{
“ default_icon”:“ img / flash128.png”,
“ default_title”:“ Chrome webrequest”
},
“图标”:{
“ 48”:“ img / flash48.png”
}
}
background.js
chrome.webRequest.onCompleted.addListener(
函数OnWebRequestCompleted(){
chrome.tabs.executeScript(null,{
文件:“ Inject.js”
},function(){});
},{
网址:[“ ”],
类型:[“ main_frame”]
},[“ responseHeaders”]);
Inject.js
var url = document.URL;
如果(url.indexOf(“ site.com”)!= -1){
var form = document.getElementsByTagName(“ form”);
var btnclass = document.getElementsByClassName(“ btnClassName”);
var inputField = document.getElementsByTagName('input');
for(var x = 0; x
答案 0 :(得分:0)
您的iframe是其他文档。当前使用document.getElementsBy*
的地方,您需要更改为类似
var iframe = document.getElementById('frameID');
var innerDoc = iframe.contentDocument
innerDoc.getElementsBy*...