-1

こんにちは、Facebook が追加した厄介な新しい写真表示機能を削除する Google Chrome 用の小さなグリースモンキー スクリプトを作成しました。URL の末尾から「&theater」を削除するだけです。私の最初の試みは、それを1行で行うことでした。

if (window.location.toString().indexOf('www.facebook.com') >= 0) {
    window.location.href = window.location.href.replace(/(&theater)$/, '');
}

しかし、それではページが絶えずリロードされ、スクリプトが何度も実行されました。そこで、ページの読み込み時に呼び出される関数にそのコードを入れることにしました。私のコードは次のようになります。

window.onload = function()
{
if (window.location.toString().indexOf('www.facebook.com') >= 0) {
    window.location.href = window.location.href.replace(/(&theater)$/, '');
}
}

私の問題は、Facebook ページをロードするときに window.onload が呼び出されないことです。他のWebサイトでも機能します(関数内にアラートを配置して、呼び出されているかどうかを確認します)。助言がありますか?

4

3 に答える 3

0

許可されているのは1つだけwindow.onloadで、Facebookはすでにそれを使用している可能性がありますか?

参照してくださいalert(window.onload)...

フェイスブック

于 2011-02-14T00:11:38.583 に答える
0

それが機能しonload ていたとしても、リロード間の時間が長くなるだけで、無限ループが続くことになります。:)

ほとんどの場合... ループを回避するには、ロード間で存続するフラグを設定します。これを行う最も簡単な方法は、URL パラメータを作成することです。

ただし、この場合、検索対象を変更することができます (今のところ)。

何かのようなもの:

if ( /&theater/i.test (window.location.href) )
{
    window.location.href = window.location.href.replace(/(&theater)$/, '');
}
于 2011-02-14T01:09:23.383 に答える