簡體   English   中英

“addEventListener”不適用於 Chrome 擴展

[英]'addEventListener' not working on Chrome Extension

我在 window 中添加了一個 addEventListener,但它返回以下錯誤:

未捕獲的類型錯誤:無法在“EventTarget”上執行“addEventListener”:需要 2 個 arguments,但只有 1 個存在。

window.addEventListener('DOMContentLoaded', setUpStuff, false);

另一個錯誤:

未捕獲的類型錯誤:無法讀取 null 的屬性“addEventListener”(在:

 optionsButton.addEventListener('click', function() {

這是代碼:

window.addEventListener('DOMContentLoaded', setUpStuff, false);
function setUpStuff(){
    let optionsButton = document.getElementById('#go-to-options');
    optionsButton.addEventListener('click', function() {
        if (chrome.runtime.openOptionsPage) {
          chrome.runtime.openOptionsPage();
        } else {
          window.open(chrome.runtime.getURL('options.html'));
        }
      });
}

您應該在 function 將要運行的執行中添加一個事件。 getElementById需要一個 ID,而不是選擇器,因此您需要刪除#

window.addEventListener('DOMContentLoaded', setUpStuff, false);
function setUpStuff(){
    let optionsButton = document.getElementById('go-to-options');
    optionsButton.addEventListener('click', function() {
        if (chrome.runtime.openOptionsPage) {
          chrome.runtime.openOptionsPage();
        } else {
          window.open(chrome.runtime.getURL('options.html'));
        }
      });
}

暫無
暫無

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

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