![](/img/trans.png)
[英]Why is jQuery not working in the browser action popup of a google chrome extension?
[英]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!");
});
你需要:
學習調試擴展彈出窗口 。 它會向您顯示信息錯誤。
所述錯誤將參考內容安全策略。 所以你需要閱讀有關擴展的CSP 。
閱讀上述文檔后,您需要解決的第一個問題是嘗試使用遠程腳本。 這是可能的 ,但對於像jQuery這樣的東西,最好下載它的副本,將其添加到擴展的文件夾並將其包含為本地文件:
<!-- refers to extension's own folder --> <script src="jquery.min.js"></script>
其次,您需要在文件中收集自己的腳本並將其包含在內; 不允許以任何形式使用內聯代碼 ,內容腳本不適用於擴展頁。
還要確保在jQuery.min.js
之前包含popup.js
。 我犯了這個愚蠢的錯誤,在popup.js
之前加載jQuery.min.js
並且它不能那樣工作。 所以總是先加載jQuery.min.js
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.