所以问题是脚本一直在工作,直到我登录 Facebook,然后要触发脚本,我必须手动刷新整个网站。
// ==UserScript==
// @name Open Test
// @version 1.0
// @description Test
// @include http://facebook.com/*
// @include http://*.facebook.com/*
// @include https://facebook.com/*
// @include https://*.facebook.com/*
// @include http://facebook.com/*/*
// @include http://*.facebook.com/*/*
// @include https://facebook.com/*/*
// @include https://*.facebook.com/*/*
// @include http://facebook.com/*/*/*
// @include http://*.facebook.com/*/*/*
// @include https://facebook.com/*/*/*
// @include https://*.facebook.com/*/*/*
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==
alert('Hello world!');
最佳答案
我不知道为什么@include
不起作用,因为似乎其中一些必须与facebook登录页面匹配,无论如何你可以尝试使用@match
代替为了让事情变得清晰,因为您的一些 @includes
也在做同样的事情,例如您正在添加:
// @include https://facebook.com/*
// @include https://facebook.com/*/*
// @include https://facebook.com/*/*/*
但是第一个就足够了 //@include https://facebook.com/*
因为它已经匹配例如 https://facebook.com/example/path/其他
。
正如我所说,为了让事情变得清晰,您可以尝试使用 @match
,如下所示:
// ==UserScript==
// @name Open Test
// @version 1.0
// @description Test
// @match *://www.facebook.com/*
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==
alert('Hello world!');
In this case
@match *://www.facebook.com/*
: Match any URL with both schemes (http and https) in www.facebook.com.
基本上,@includes
和 @match
之间的区别是 @includes
允许正则表达式,但在您的情况下似乎不需要这样做。
在这里您可以看到有关 how @match
works. 的更多信息
关于javascript - Facebook 不会触发刷新事件,Tampermonkey 也无法工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35700650/