对于 chrome 扩展,main.js 如何从 popup.js 调用函数?
For chrome extension, how can main.js call function from popup.js?
我已经从网页中提取用户名和密码(main.js) 并尝试将它们存储在indexeddb(popup.js) 中。至此,popup.html(popup.js)可以手动存储用户名和密码。我想在有用户名和密码的情况下调用popup.js中的函数。非常感谢。
函数在main.js
if (username && password)
{
if(confirm("Store domain with username and password?"))
{
//want to call function test() from popup.js
}
else
{
}
}
popup.js
中的函数
function test()
{
alert("function called");
}
manifest.json
{
"name": "PM Extension",
"version": "1.0",
"manifest_version": 2,
"description": "a Google Chrome extension",
"permissions": ["tabs"],
"browser_action": {
"default_icon": "icon.png" ,
"default_title": "PM Extension",
"default_popup": "popup.html"
},
"content_scripts": [
{
"matches": ["http://*/*",
"https://*/*"
],
"js": ["jquery.min.js", "main.js"],
"run_at": "document_start"
}]
}
main.js
chrome.runtime.sendMessage('Your string/ object/ whatever', function(response) {
console.log(response.farewell);
});
popup.js
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if (request === 'What I want to recieve') {
// Do something
sendResponse('A response');
}
});
我已经从网页中提取用户名和密码(main.js) 并尝试将它们存储在indexeddb(popup.js) 中。至此,popup.html(popup.js)可以手动存储用户名和密码。我想在有用户名和密码的情况下调用popup.js中的函数。非常感谢。
函数在main.js
if (username && password)
{
if(confirm("Store domain with username and password?"))
{
//want to call function test() from popup.js
}
else
{
}
}
popup.js
中的函数function test()
{
alert("function called");
}
manifest.json
{
"name": "PM Extension",
"version": "1.0",
"manifest_version": 2,
"description": "a Google Chrome extension",
"permissions": ["tabs"],
"browser_action": {
"default_icon": "icon.png" ,
"default_title": "PM Extension",
"default_popup": "popup.html"
},
"content_scripts": [
{
"matches": ["http://*/*",
"https://*/*"
],
"js": ["jquery.min.js", "main.js"],
"run_at": "document_start"
}]
}
main.js
chrome.runtime.sendMessage('Your string/ object/ whatever', function(response) {
console.log(response.farewell);
});
popup.js
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
if (request === 'What I want to recieve') {
// Do something
sendResponse('A response');
}
});