0

行 "manifest_version": 2 を追加した後、jquery.rss.js が機能しません。エラー: Uncaught RefferenceError: $ が定義されていません。

popup.html:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link href="popup.css" rel="stylesheet" type="text/css" />
    <link href="loader.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="jquery-1.6.4.min.js"></script>
    <script type="text/javascript" src="jquery.rss.js"></script>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript" src="popup.js"></script>
</head>

<body>
    <span class="menu">
        <span><img src="images/home.png" id="url_get_home" title="Main"/></span>
        <span><img src="images/update.png" id="url_get_reload" title="Update"/></span>
        <span><img src="images/close.png" id="url_get_close" title="Close"/></span>
    </span>
    <div id="loader">
    <img src="images/plugin.png" />
    <br /><br />
    <script>
      jQuery(function($) {
        $("#rss_feeds").rss("http://feeds.feedburner.com/..../Vzse", {
          limit: 5,
          effect: 'slideFastSynced'
        })
      })
    </script>
    <div id="rss_feeds"></div>
    </div>
</body>
</html>

以下のコードの問題は、別の *.js ファイルでそれを負担すると、関数が機能せず、呼び出されないことです。

<script>
     jQuery(function($) {
            $("#rss_feeds").rss("http://feeds.feedburner.com/..../Vzse", {
              limit: 5,
              effect: 'slideFastSynced'
            })
          })
        </script>

マニフェスト.json:

{
  "name": "...",
  "version": "1.0",
  "description": "...",
  "manifest_version": 2,
  "background": {
      "scripts": [ "jquery.js", "popup.js", "jquery.rss.js", "jquery-1.6.4.min.js" ]
   },
   "icons": {
      "16": "images/icon16.png",
      "48": "images/icon48.png",
      "128": "images/icon128.png"
   },
  "permissions": [ "tabs", "http://*/*", "https://*/*" ],
  "web_accessible_resources": [ "popup.html" ],
  "update_url": "http://clients2.google.com/service/update2/crx",
  "browser_action": {
    "default_locale": "en",
    "default_title": "...",
    "default_icon": "images/icon.png",
    "default_popup": "popup.html"
  }

}

問題の解決に役立ちますか?

4

1 に答える 1

0

あなたのエラーはマニフェストにこれを含めることから来ます:

"background": {
    "scripts": [ "jquery.js", "popup.js", "jquery.rss.js", "jquery-1.6.4.min.js" ]
 },

これは、バックグラウンドページを作成し、リストされたスクリプトを順番に実行するようにChromeに指示しています。jquery.rss.js前にリストされているように、実行時に定義されていないjquery-1.6.4.min.jsことがわかります。$

しかし、とにかく、背景ページが必要ないため、これらの行を完全に削除する必要があります。ポップアップを定義しているのです。

コメントですでに述べたように、インラインスクリプトを別のファイルに移動する必要もあります。

于 2012-08-17T07:13:55.293 に答える