1

我为批量关注/取消关注Twitter用户创建了这个 Greasemonkey 。该脚本工作得很好。但是,当我第一次访问包含列表中的一个页面时,它不会总是(几乎永远不会)加载。

例如,如果我去twitter.com/followersCTRLF5 ,除非我使用(从服务器刷新页面内容),否则脚本不会加载。

我不确定这是否是 Greasemonkey 脚本应该运行的方式,还是我的代码中需要更改某些内容?

我的GM脚本:

// ==UserScript==
// @name            Brainstack.net "YOU Follow (Beta)"
// @namespace       net.brainstack.gm
// @description     Script for automating the following of users from the Twitter Followers page
// @require         http://gm.brainstack.net/tasa/tasa.js
// @resource        tasa_CSS http://gm.brainstack.net/tasa/tasa.css
// @downloadURL     http://gm.brainstack.net/tasa/Brainstack.net_tasa.user.js
// @updateURL       http://gm.brainstack.net/tasa/Brainstack.net_tasa.meta.js
// @include         https://twitter.com/followers*
// @include         https://www.twitter.com/followers*
// @include         https://twitter.com/*/followers*
// @include         https://www.twitter.com/*/followers*
// @include         https://twitter.com/*/following*
// @include         https://www.twitter.com/*/following*
// @include         https://twitter.com/following*
// @include         https://www.twitter.com/following*
// @include         https://twitter.com/search/users?*
// @run-at          document-end
// @grant           GM_getResourceText
// @grant           GM_addStyle
// @version         1.14
// ==/UserScript==

//add CSS to head
var CSS = GM_getResourceText("tasa_CSS");
GM_addStyle(CSS);

//hook to the page load
bsnet_app_page_load();

您可以在 gm.brainstack.net 下载和/或安装脚本

谢谢!

4

1 回答 1

1

此问题与我必须刷新页面以运行 Greasemonkey 脚本所涵盖的问题类型相同?. 阅读、理解并使用该答案的技术在“新”页面上“触发”您的脚本。

此外,其中的脚本代码tasa.js具有以下内容:

var localStorageString = localStorage['bsnet_app_follower'];
if (localStorageString.length > 0){

这会使脚本崩溃,尤其是在早期运行时。

那种代码应该是

var localStorageString = localStorage['bsnet_app_follower'];
if (localStorageString  &&  localStorageString.length > 0){


可能还有其他问题(一眼看不到;也没有调试脚本),但这不是代码审查的地方。

于 2013-03-23T00:08:27.960 回答