【Chrome拡張機能】javascriptを読み込ませる方法

Chrome拡張ブラウザアクション

satoshiii
satoshiii

対象読者

  • 拡張機能について知りたい
  • 拡張機能でjsって使えるか知りたい

何が書いてる?

  • jsを読み込ませる方法

Chrome拡張機能では、

セキュリティの関係でポップアップで表示されたHTMLに
直接JavaScriptを記述することはできません。

じゃあ、どうすればいいか?

JavaScriptを読み込ませる方法

外部ファイルとして、JavaScriptを読み込ませれば可能になります。

作成ファイルと解説

JavaScriptファイルを読み込ませて、ポップアップ内の<p>タグをタップするとアラート表示させる拡張機能を作成します。

manifestファイル

ブラウザアクションを使用します。

{
  "manifest_version": 2,
  "name": "Chrome Ex",
  "version": "1",
  "browser_action": {
    "default_popup": "popup.html",
    "default_title": "Helloを表示する"
  }
}

書き方の詳細は、こちらの記事を参考にしてください。

Chrome拡張ブラウザアクション【Chrome拡張機能】ブラウザアクション

HTMLファイル

自作したmyscript.jsを5行目で、外部ファイルとして読み込みませます。

JavaScriptで読み込ませるために、pタグにidも指定しています。

<!DOCTYPE html>
<html lang="ja">
<meta charset="UTF-8" />
<head>
    <title>ああああ</title>
    <script type="text/javascript" src="myscript.js"></script>
</head>

<body>

<p id="hello">Hello!こんにちわ</p>

</body>
</html>

JavaScriptファイル

詳細は省きますが、HTMLファイルを読み込んで<p>タグがクリックされた時にアラートを出します。

window.onload = function() {
     var el = document.getElementById("hello");
     el.addEventListener("click", function(){
          alert("外部JavaScriptファイル");
     }, false);
};

まとめ

satoshiii
satoshiii

HTML内にJavaScriptを使えない制限はありますが、

外部ファイルを用意すれば使用可能です。

これで、だいぶ拡張機能の幅が増えると思います。

ソースコードはこちら参照。
https://github.com/satoNobu/chrome_ex/tree/browser_action_js


拡張機能については、他にもまとめてますのでもっと知りたい方はこちらもどうぞ。

Chrome【Chromeの拡張機能】開発 まとめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です