4

私は似たような問題をたくさん見つけましたが、同等のものはなく、正しい解決策もありません。これは非常に奇妙な問題です。

問題をテストするための簡単な Greasemonkey スクリプトがあります。

// ==UserScript==
// @name        testdiddio
// @namespace   http://userscripts.org/users/useridnumber
// @include     https://www.google.it/
// @version     1
// ==/UserScript==


function wait(){
    console.info("wait");
    setTimeout(wait,1000);
}

console.info("start");
wait();

これは、firebug からの出力です。

start
wait
wait
wait
wait

wait() 関数は 4 回呼び出されてから停止します。タイムアウトを 100 ミリ秒に設定すると、呼び出しは少なくとも 10/15 秒間機能しているように見え、その後停止します。

私が使用している: Firefox 12.0 Greasemonkey 0.9.19

4

1 に答える 1

6

これは Greasemonkey 0.9.19 のバグです。
ページの JS が無効になっている場合でも機能する機能が追加され、setTimeout()いくつかの問題が発生しました (問題15491552、および1553など)。

リリース 0.9.20 でまもなく解決されるか、バージョン 0.9.18 に戻されます。

于 2012-05-11T14:52:23.617 に答える