Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何匹配youtube';chrome扩展中的url?_Javascript_Jquery_Google Chrome_Content Script - Fatal编程技术网

Javascript 如何匹配youtube';chrome扩展中的url?

Javascript 如何匹配youtube';chrome扩展中的url?,javascript,jquery,google-chrome,content-script,Javascript,Jquery,Google Chrome,Content Script,我试图让SimplesChrome扩展在youtube(内容脚本)中工作,但它似乎无法正常工作 奇怪的是,它有时有效,而有些简单却不行 我的最终目标是使它只在视频URL中工作,但在此之前我被卡住了 我最初试过: "matches": [ "http://www.youtube.com/*" ] 没有任何成功,我觉得很奇怪,所以我想这是我的第一个问题,因为在我做的另一个扩展中,它对http://twitter.com/ 我读了一些youtube扩展的代码,其中一个使用: "matches": [

我试图让SimplesChrome扩展在youtube(内容脚本)中工作,但它似乎无法正常工作

奇怪的是,它有时有效,而有些简单却不行

我的最终目标是使它只在视频URL中工作,但在此之前我被卡住了

我最初试过:

"matches": [ "http://www.youtube.com/*" ]
没有任何成功,我觉得很奇怪,所以我想这是我的第一个问题,因为在我做的另一个扩展中,它对
http://twitter.com/

我读了一些youtube扩展的代码,其中一个使用:

"matches": [ "*://*.youtube.com/*" ]
奇怪的是,这只在某些时候起作用,而我无法复制/理解什么时候起作用。当我重新加载页面时,它肯定不起作用,但在某些URL中它只是起作用

实际脚本是用于调试的基本脚本:

$(window).load(function() {
    alert(2);
});
所以我对这种不一致的行为感到困惑

编辑:

此url似乎不起作用:

这是为了:

编辑2:

整个舱单:

{
  "name": "__MSG_extname__",
  "version": "0.1",
  "default_locale": "en",
  "manifest_version": 2,
  "icons": {
    "16": "images/icon16.png",
    "48": "images/icon48.png",
    "128": "images/icon128.png" },
  "content_scripts":[
    {
    "matches": [ "*://*.youtube.com/*" ],
    "js": ["jquery.min.js", "script.js"]
    }
  ],
  "web_accessible_resources": ["images/down-arrow.png"]
}

您需要发布或链接到整个
manifest.json
,但最可能的问题是
$(窗口).load(…

因此,将
“run\u at”:“document\u end”
添加到清单中,以确保脚本在可预测的时间运行,并且在
window.onload之前运行

~~
接下来,。根据需要检查并禁用其他扩展

~~

最后,可能是YouTube通过AJAX加载了一些页面——尽管我目前找不到这样的情况。AJAX加载的页面不会重新加载您的内容脚本。如果您发现AJAX加载了“新”页面的情况,(1)在此处评论配方,(2)您可以。(请注意,
waitForKeyElements.js
将通过清单而不是
@require
指令添加。)

您能提供一些对您的脚本不起作用的URL吗?我已经更新了这个问题,它看起来确实是随机的:(似乎与URL无关。
“run\u at”:“document\u end”
似乎解决了这个问题,非常感谢!