Итак, у меня есть popup.html, который загружает скрипт (popup.js) в качестве заголовка для действия браузера. Затем он вызывает звонки на сайт, чтобы получить необходимую информацию.Расширение Chrome: нажатие информации, собранной до создания новой вкладки?
Я получил всю необходимую информацию, используя XMLHTTPRequests, и сохранил ее в переменных в popup.js.
Теперь я пытаюсь создать новую вкладку, загрузить веб-страницу, а затем использовать сохраненную информацию для заполнения формы.
chrome.tabs.create({ 'url': "https://site.html" });
Эта линия в popup.js
Это берет меня к месту желаемого быстро, но, кажется, чтобы удалить всю информацию, которую я уже загруженную ранее. Он даже не предупреждает меня о той информации, которую я хочу, даже если я попрошу ее, прежде чем делать вкладку. Как мне приступить к созданию вкладки с определенным URL-адресом, а затем использовать информацию, которую я собрал ранее в popup.js, чтобы заполнить форму на ней, пока она содержится внутри popup.js? Неужели моя логика испорчена? Большое вам спасибо за любой совет.
ОБНОВЛЕНИЕ: Я редактирую это, чтобы иметь больше смысла.
это мой popup.js
function do(){
var xhr = new XMLHttpRequest();
xhr.open("Get", Url);
xhr.send();
xhr.addEventListener("readystatechange", function() {
if (this.readyState === 4) {
var dogName = this.responseText;
alert(dogName)
}
do();
chrome.tabs.create({ 'url': "site.html" });
внутри site.html есть форма. Я должен был сделать это в этой форме.
document.getElementById('form').getElementsByTagName('input')[0].value = dogName;
document.getElementById("btnOK").click()
Но это обыкновение делать что-либо, если линия
chrome.tabs.create({ 'url': "https://site.html" });
существует, то он будет принимать только меня на эту страницу и не работать do()
, чтобы предупредить ничего.
Удаляя строку создания, расширение предупреждает меня о той информации, которую я хочу.
, учитывая, что вы даете ему действительно короткий URL-адрес без какой-либо информации, что вы, кроме как показать? – dandavis
нет, я быстро его закодировал. Заморозь его снова. – Stevie