Greasemonkey または Tampermonkey で iframe を除外するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1535404

質問

Web サイト用の Greasemonkey スクリプトを作成しました。スクリプトはページの最後に div を追加します。

document.body.insertBefore(myDiv, document.body.firstChild);

しかし、現在、サイトはGoogle広告用のiframeを追加しており、その結果、私のdivもiframeに表示されますが、これは私が望むものではありません。

iframe に影響を与えるスクリプトを停止するにはどうすればよいですか?

役に立ちましたか?

解決

Greasemonkey がサポートするようになりました @noframes 指令 (Tampermonkey と Scriptish によって長年サポートされています)。
これを使用すると、iframe での操作をより明確にブロックできます。


残念ながら、 npdotyさんの答え Firefox のブラウザ コンソールに警告が表示されます。

警告:関数外での return の使用は非推奨であり、Greasemonkey の将来のバージョンで障害が発生する可能性があります。

他のヒント

私は、フレームまたはインライン上で実行しないように私のスクリプトの先頭にこれを入れます:

if (window.top != window.self)  //don't run on frames or iframes
    return;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top