我希望通过创建Chrome扩展程序来使工作中的日常任务自动化(填写表格等)。
// content.js
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if( request.message === "clicked_browser_action" ) {
function AddTitle(title) {
$('input[class="title"]').click();
$('input[class="title"]').val(title).trigger('change');
}
AddTitle("Example title.");
$('button[id="myButton"]').click(); // This click action, opens a new tab.
chrome.runtime.sendMessage({"message": "btnClicked"});
}
}
);
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if( request.message === "operations_on_new_tab" ) {
console.log("Should be on new tab.");
}
}
);
我完成上面的表格,然后在扩展名的帮助下单击一个按钮,然后发送btnClicked消息。
// background.js
// Called when the user clicks on the browser action.
chrome.browserAction.onClicked.addListener(function(tab) {
// Send a message to the active tab
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "clicked_browser_action"});
});
});
// When got the btnClicked message. Sending operations_on_new_tab message.
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if( request.message === "btnClicked" ) {
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "operations_on_new_tab"});
});
}
}
);
上面所有我的代码,但是console.log(“应该在新选项卡上。”);永远不会出现在新标签上。为了使扩展程序保持在新标签上该怎么办?