首页 > 解决方案 > 如何将变量传递给 chrome.tab.create?

问题描述

如何将变量传递给 chrome.tabs.create?

我正在尝试为我的锚设置事件侦听器,但我在 for 循环中创建它们:

for (var i = 0; i < links.length; i++){
    if(links[i][0] === text){
        var a = document.createElement('a');
        a.setAttribute('href', links[i][2]);
        a.setAttribute('class','links_anchor');
        a.innerHTML = links[i][1];
        
        test = links[i][2];
        a.addEventListener('click', function(){
            chrome.tabs.create({
                url: test,
                active: false
            });
        });

        document.getElementById('links_content').appendChild(a);
    }
}

如何将变量传递给 url 参数?现在发生的是所有链接都具有相同的操作。例如,当我单击其中任何一个时,它会打开数组中的最后一个 URL。

标签: javascriptgoogle-chromegoogle-chrome-extension

解决方案


如果您的意思是像这样添加查询参数: https ://example.com/?foo=bar

看到你有测试中的url,你可以打开 chrome.tabs.create({ url: test, active: false });

进入

chrome.tabs.create({ url: test + "?foo=bar&bar=foo" active: false });


推荐阅读