2016-07-22 15 views
1

ユーザーがページ上のテキストをハイライト表示するときに小さな入力をポップアップするクロム拡張を作成しようとしています(テキストのハイライト機能のMediumのツイートに似ています)。コンテンツスクリプトとChrome拡張機能でjQueryを使用する

私は進歩していますが、(バニラJSとXHRではなく)jQueryを使うほうがずっと簡単です。

マニフェストでjQueryを必要とする記事をいくつか見てきましたが、私はこれをさまざまな方法で試してみました。

私はマニフェスト(下)、contentscript.js、およびdropdown.js(ページに挿入したいファイル)を持っています。

{ 
    "name": "na", 
    "version": "1.0", 
    "manifest_version": 2, 
    "description": "na", 
    "homepage_url": "na", 
    "content_scripts": [{ 
     "js": ["jquery.js", "contentscript.js"], 
     "matches": ["https://github.com/*"] 
    }], 
    "web_accessible_resources": ["jquery.js","dropdown.js"] 
} 

ご協力いただければ幸いです。

+0

1.「content_scripts」にファイルを置きます - > "js"フィールドの場合、この場合は "web_accessible_resources"は必要ありません。あなたが遭遇したエラーを投稿してください。なぜそれが失敗したと思いますか? 2. vanilla JSは、セレクタを使って要素を問い合わせるための 'querySelector'や' querySelectorAll'など、多くのことをサポートしています。['fetch'](https://developers.google.com/web/updates/2015/03/introduction-to-fetch?hl = en)をAjaxの代わりに使用します。 –

+0

Githubはいくつかのコンテンツを動的に追加するので、問題の詳細な説明を掲示するだけでなく、dropdown.jsがどのように注入されるのか、その内部にあるのか、関連するコードを追加する必要があります。 – wOxxOm

答えて

1

メインフォルダにjquery.jsがあると仮定すると、マニフェストの書き方はうまくいくはずです。私はあなたがメインフォルダにjQueryファイルを持っていないか(たぶんそれがスクリプトフォルダにあり、その場合はフォルダの場所を参照する必要があります:scripts/jquery.jsなど)、または名前が間違っているおそらくそれはjquery.min.jsです)。あなたはjQueryのダウンロード持っていない場合、私はあなたのマニフェストにGoogle hosted libraryを参照推薦

(同じ場所にあなたが現在それが示されてい)

{ 
    "name": "na", 
    "version": "1.0", 
    "manifest_version": 2, 
    "description": "na", 
    "homepage_url": "na", 
    "content_scripts": [{ 
     "js": ["https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js", "contentscript.js"], 
     "matches": ["https://github.com/*"] 
    }], 
    "web_accessible_resources": ["dropdown.js"] 
} 
関連する問題