0

ユーザーが現在表示しているページのすべてのリンクをチェックし、そのリンクのターゲットをチェックするクロム拡張機能を構築しようとしています。「http://www.youtube.com」の場合、拡張機能はそれを変更します「https://www.youtube.com」へ

しかし、私の拡張機能が機能していません!!

ここに私のmanifest.jsonがあります

{
  "name": "Youtube Host Changer",
  "version" : "1.0",
  "manifest_version" : 2,
  "description" : "It changes Youtube HTTP host to HTTPS",
  "browser_action": {
    "default_icon": "icon.png"
  },
  "content_scripts": [
      {
     "matches": ["file:///*/*","http://*/*","https://*/*"],
     "js": ["jquery.js", "youtube_host.js"]
   }
    ]
  }

ここに私の youtube_host.js があります

/*
* Part of the Youtube Host Change Project.
* Author : Ahmad Faiyaz
*/
function change_links(){
var nodes = document.getElementsByTagName("a");
    for(var i = 0; i < nodes.length; i++) {
        var link= nodes[i].href;
        link=link.replace("http://www.youtube","https://www.youtube");
        nodes[i].href=link;
 };
}

window.onload = change_links();
4

2 に答える 2

0

書く必要があると思います

...
link = link.replace("http://www.youtube","https://www.youtube");
...

string.replace元の値は変更しませんが、新しい結果文字列を返します。

于 2012-12-09T22:00:16.467 に答える
0

追加後に動作します

"permissions":["<all_urls>"]

manifest.jsonファイルに。

最終的な manifest.json ファイル

{
  "name": "Youtube Host Changer",
  "version" : "1.0",
  "manifest_version" : 2,
  "description" : "It changes Youtube HTTP host to HTTPS",
  "browser_action": {
    "default_icon": "icon.png"
  },
  "content_scripts": [
      {
     "matches": ["file:///*/*","http://*/*","https://*/*"],
     "js": ["jquery.js","youtube_host.js"]
   }
    ],
    "permissions":["<all_urls>"]
  }

さらに情報が必要な場合はお知らせください。

于 2012-12-09T23:06:27.103 に答える