我正在使用chrome扩展程序供个人使用,以填写特定网站上的表单。我得到了一切正常工作,除了注入文件填写表格后,表格停止工作的网站,我不知道为什么。
的manifest.json
{
"browser_action": {
"browser_style": true,
"default_title": "Fill FORM ON WEBSITE",
"default_popup": "popup.html"
},
"description": "Fill FORM ON WEBSITE",
"manifest_version": 2,
"name": "Fill FORM ON WEBSITE",
"permissions": [
"tabs", "http://*/*", "https://*/*" , "file:///*"
],
"version": "1.0"
}
popup.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<label>Item Name</label><input type="text" id="itemnametxt"/><br>
<label>Item Code</label><input type="text" id="itemcodetxt"/><br>
<label>Date Of Input</label><input type="text"
id="dateofinouttxt"/><br>
<button id="fillform"> Fill the form </button><br>
<script src="popup.js"></script>
</body>
</html>
popup.js
$("#fillform").click(function(){
chrome.tabs.query({ }, function (tabs) {
var item_name = document.getElementById("itemnametxt").value ;
var item_code = document.getElementById("itemcodetxt").value ;
var item_date_input=document.getElementById("dateofinouttxt").value;
chrome.tabs.executeScript(tabs[0].id, {file: "fill.js",
runAt:"document_end", allFrames : true}, function(result){
chrome.tabs.sendMessage(tabs[0].id, {scriptOptions:
{param1:item_name, param2:item_code,param3:item_date_input}},
function(){ alert(result[0]) ;});});
});
});
fill.js
chrome.runtime.onMessage.addListener(function(message, sender,
sendResponse){var scriptOptions = message.scriptOptions;
document.getElementById("itemContentID").value=scriptOptions.param1;
document.getElementById("itemContntcode").value=scriptOptions.param2;
document.getElementById("itemContentdoi").value=scriptOptions.param3;
sendResponse({});
});
当我在填写表格后在网站上工作时,网站没有 工作。我希望有人能找出错误或有人有 另一种填写特定网站表格的方法。
提前致谢