我在Windows 7上的Chrome版本33.0.1750.46 beta-m上使用Tampermonkey v 3.6.3737.80。我在Tampermonkey中定义了几个自定义用户脚本,因此标题如下:
// ==UserScript==
// @name MyScript(s)
// @version 0.1
// @description enter something useful
// @include http://domain.com/*
// @include http://www.domain.com/*
// @copyright 2012+, You
// @require http://code.jquery.com/jquery-1.10.2.min.js
// ==/UserScript==
理论上,它应该适用于http://domain.com/*
形式的所有页面,有或没有www
。通常,脚本可以正常工作。但是,在站点内的某些页面上,应该在站点上工作的所有tampermonkey脚本似乎都停止工作。在手动重新加载页面之后,脚本有时会再次运行,否则更多的重新加载将解决问题。问题是我不知道为什么会这样;代码似乎是合理的,因为它在刷新后无需其他更改即可工作。它会与chrome和/或tampermonkey有关吗?
编辑:
该脚本使用jQuery触发器$('#id').trigger('click')
浏览其中一个网页。单击此处会更改页面的URL,这会让我认为它不是通过AJAX完成的吗?因此,当脚本执行trigger
时,我在下一页上的tampermonkey脚本不起作用。但是,如果我刷新该页面,那就可以了。
我还注意到,如果我在chrome(CTRL + SHIFT + I
)中打开开启控制台,它可以正常工作。知道为什么会这样吗?
编辑v2:
不知道为什么它与开放式控制台一起工作,它似乎已停止这样做,现在再次使用编辑1所描述的间歇性功能,无论控制台是否打开。