[英]Chrome extension: click on link after redirect
我有Chrome扩展程序,可以单击任何链接并重定向到其他页面。 现在,我想点击新页面上的第一个链接,但我不知道该怎么做。
这是我的代码:
chrome.extension.onRequest.addListener(function(request, sender) {
chrome.tabs.update(sender.tab.id, {url: request.redirect}, function(callback){
chrome.tabs.executeScript(null, {code: "var firstdiv = document.getElementsByClassName('r')[0]; var firstlink = firstdiv.getElementsByTagName('a')[0]; firstlink.click();"});
});
});
当然,我的manifest.json
有一些权限:
"permissions": ["tabs", "http://*/*", "https://*/*"],
通过使用onUpdated
侦听器和全局变量(包含选项卡ID)解决了该问题:
var tab_ids = [];
chrome.extension.onRequest.addListener(function(request, sender) {
chrome.tabs.update(sender.tab.id, {url: request.redirect}, function(tab){
tab_ids.push(tab.id);
});
});
chrome.tabs.onUpdated.addListener(function(tabId, changeinfo, tab){
var index_of_element = tab_ids.indexOf(tabId);
if (index_of_element > -1){
chrome.tabs.executeScript(tabId, {
file: 'click.js'
});
tab_ids.splice(index_of_element, 1);
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.