0

これが私のマニフェストです:

{
  "name": "test.",
  "version": "1.0",
  "permissions": [
    "tabs", "http://*/*", "https://*/*"
  ],
   "content_scripts": [
  {      
  "js": ["jquery.js"]
  }
 ],
  "browser_action": {
      "default_title": "Set this page's color.",
      "default_icon": "icon.png",
     "default_popup": "popup.html"
  },
  "manifest_version": 2
}

そして私のpopup.js

function click(e) {
  chrome.tabs.executeScript(null,
  {code:"$('img').css('display','none');
  window.close();
}

document.addEventListener('DOMContentLoaded', function () {
...
  }
});

しかし、何らかの理由でエラーが発生します

Uncaught ReferenceError: $ が定義されていません

なんで?

4

1 に答える 1

0

コードの問題

  • マニフェストに一致するパターンがないため、jQuery はどの場所でも実行\挿入されなかったか、$またはjQueryキーワードが定義されていません。

解決

マニフェストを変更して、jQuery が挿入される URL を含めます (URL のアクセス許可を宣言することを忘れないでください。

"content_scripts": [
    {
      "matches": ["http://www.google.com/*"]
      "js": ["jquery.js", "myscript.js"]
    }
  ],

上記は Google ページに jQuery<all_urls>を挿入し、すべての Web サイトに挿入するために使用します。

参考文献

于 2013-01-22T17:04:27.903 に答える