gpt4 book ai didi

javascript - Chrome.tabs.executeScript 似乎没有做任何事情

转载 作者:行者123 更新时间:2023-12-03 10:41:36 25 4
gpt4 key购买 nike

我正在尝试学习一些有关 javascript 的知识,并遇到了这个问题。基本上我想做的是获取 url ,重定向到代码中的站点并将其放在文本框中并激活按钮并不是说所有这些都是为了获得答案,而是作为我的目标的提示为了。所以我在这里:

popup.js:

   var url, tab,myNewTab;
function init(){
chrome.tabs.query({currentWindow: true, active: true},function(tabs){
url = tabs[0].url;
tab = tabs[0]
tabId = tabs[0].id;
processTab();
});
}

function processTab(){
chrome.tabs.update(tabId, {selected: true});
if (url.substring(0,5) === "http:")
{

url = insert(url , 4 , "s");
}
chrome.tabs.update(tabId , { url: "https://alexanderproxy33.appspot.com"})



cont() ;
}
function insert(str, index, value) {
return str.substr(0, index) + value + str.substr(index);
};
function cont()
{
chrome.tabs.executeScript(null, {code:"document.getElementById('input').value = url"});
}


init();

我尝试访问的网站的代码:

<form action="" method="get" accept-charset="utf-8" target="_blank">
<input name="url" type="text" class="txt" id="input" placeholder="type url here.." onfocus="this.value='';" />
<input type="submit" class="btn" value="Go" />
</form>

我已经尝试了一些方法来解决这个问题(即尝试使用非executeScript的东西,将一点代码放入文件中),但似乎没有任何效果,这让我相信有些东西无法正常工作。由于我这样做是为了教育自己,因此非常欢迎任何建议。提前致谢,并知道我会尽可能检查这里,我可能需要一段时间才能去工作

最佳答案

您正在尝试在页面上下文中执行此操作:

chrome.tabs.executeScript(null, {
code:"document.getElementById('input').value = url"
});

网址 is not defined在您要注入(inject)的页面中 - 导致您看到的内容。

您希望首先在页面上下文中评估 url:

chrome.tabs.executeScript(null, {
// JSON-encode to wrap in quotation marks properly
code: "document.getElementById('input').value = " + JSON.stringify(url)
});

关于javascript - Chrome.tabs.executeScript 似乎没有做任何事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28757386/

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