簡體   English   中英

jQuery 在 chrome 擴展彈出窗口中不起作用

[英]jQuery not working in chrome extension popup

我正在構建我的第一個 chrome 擴展程序,但遇到了一些麻煩。 我想在 popup.html 上使用 jQuery。 否則彈出窗口工作正常,但 jQuery 不起作用。

編輯:我改變了它,這是新代碼,它仍然不起作用。 有任何想法嗎? 我花了兩個多小時試圖弄清楚。 我是擴展的初學者,並且在 javascript 和 jquery 方面相當生疏,所以它肯定是一些小而尷尬的事情......非常感謝!

清單文件

  "content_scripts": [{
    "matches": [website], 
    "js": [
    "content.js", 
    "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"]
   }], 

彈出窗口.html

<!DOCTYPE html>
<html>
<head>
    <title>First Google Extension</title>
    <style>
    body { 
        font-family: "Segoe UI"; 
        width: 300px; 
        font-size: 14px; 
        }; 

    #changeMe {
        color: blue; 
        font-style: bold; 
        }; 
    </style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>

<body>
    Welcome to my first Google Chrome Extension! <br> 
    <div id="changeMe">
        I'm different!
    </div>
</body>

</html>

彈出窗口.js

$(document).ready(function() {
        $("#changeMe").append("Test!");  
});

你需要:

  1. 學習調試擴展彈出窗口 它會向您顯示信息錯誤。

  2. 所述錯誤將參考內容安全策略。 所以你需要閱讀有關擴展的CSP

  3. 閱讀上述文檔后,您需要解決的第一個問題是嘗試使用遠程腳本。 這是可能的 ,但對於像jQuery這樣的東西,最好下載它的副本,將其添加到擴展的文件夾並將其包含為本地文件:

     <!-- refers to extension's own folder --> <script src="jquery.min.js"></script> 
  4. 其次,您需要在文件中收集自己的腳本並將其包含在內; 不允許以任何形式使用內聯代碼 ,內容腳本不適用於擴展頁。

還要確保在jQuery.min.js之前包含popup.js 我犯了這個愚蠢的錯誤,在popup.js之前加載jQuery.min.js並且它不能那樣工作。 所以總是先加載jQuery.min.js

暫無
暫無

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

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