gpt4 book ai didi

javascript - 获取 chrome 扩展中的所有链接

转载 作者:行者123 更新时间:2023-11-30 14:31:15 26 4
gpt4 key购买 nike

我正在尝试做一个扩展,从用户所在的网页收集社交网络链接。因此,当用户单击按钮 getLinks 时,我们会获取所有链接,然后通过检查条件将它们传递到扩展 block 中。我尝试使用 chrome.tabs.executeScript,并通过 urls = $$('a'); 获取链接,但它不起作用

 $('#getLinks').click(function(e)
{
var allLinks = [];
var i = 0;
chrome.tabs.executeScript( null, {"code": "urls = $$('a'); for (url in urls)
{ allLinks[i]=urls[url].href; i++;}"}, function() {
var vk;
var facebook;
var linkedin;
for (var i=0; i<allLinks.length; i++)
{
var profil = (allLinks[i].href);
if(profil.indexOf('vk.com')!=-1)
{
vk = profil;
$('#vk').text(vk);
}
if(profilito.indexOf('facebook.com')!=-1)
{
facebook = profil;
$('#fb').text(facebook);
}
if(profilito.indexOf('linkedin.com')!=-1)
{
linkedin = profil;
$('#linkin').text(linkedin);
}
}
});
});

最佳答案

executeScript 不是这样使用的。该代码无法访问变量 allLinksi 因为它是在别处执行的。但是您可以像在其他 SO question 中一样使用该代码的返回值:

$('#getLinks').click(function(e) {
chrome.tabs.executeScript( null, {"code": "var urls = document.querySelectorAll('a'); for(var i = 0; i < urls.length; i++) { urls[i] = urls[i].href; }; urls"}, function(results) {
var allLinks = results[0];

// use allLinks here
});
});

关于javascript - 获取 chrome 扩展中的所有链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51127644/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com