簡體   English   中英

使用多功能框擴展名加載頁面后,是否可以運行javascript?

[英]Is it possible to run javascript after a page has loaded using a omnibox extension?

我正在嘗試構建多功能框擴展程序。 本質上,我希望此擴展程序提取一個URL,然后等待該URL加載,然后執行一些簡單的JavaScript。

不確定將較長的代碼塊放在問題中是否值得贊賞,如果沒有,請隨時對我大喊大叫。

manifest.json的:

{
    "manifest_version": 2,
    "name": "AutoATR",
    "version": "0.1",
    "omnibox": { "keyword" : "atr" },
    "icons": {
      "16": "package.png"
    },
    "background": {
      "persistent": true,
      "scripts": ["background.js"]
    }
}

background.js:

function resetDefaultSuggestion() {
  chrome.omnibox.setDefaultSuggestion({
  description: 'atr: Placeholder: %s'
  });
}
resetDefaultSuggestion();

function navigate(url) {
  chrome.tabs.query({active: true, currentWindow: true}, function(tabs) 
{
  chrome.tabs.update(tabs[0].id, {url: url});
  });
}

function finder(theID) {
  document.getElementById('theElement').value=theID
  document.getElementsByClassName('btn')[1].click()
}

chrome.omnibox.onInputEntered.addListener(function() {
    // Navigate to URL
    navigate("https://theURL.com");
});

// **** Would like to wait for just this tab to load. 
// Then Execute finder(). ****

您可以將清單用於您的任務:將tab的后台腳本位置中的位置更改為pathURL,並在manifest.json中添加下一個代碼:

  "content_scripts": [{
            "matches": ["http://pathURL"],
            "js": ["js/script.js"]
        }]

在您的瀏覽器選項卡路徑與“ http:// pathURL ”模式匹配之后,將加載js / script.js。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM