次のコードで FireFox で GreaseMonkey を使用しています
if (window.opener)
{
alert(window.opener.location.href);
}
ただし、Permission Denied
おそらくクロスドメイン ポリシーが原因で、エラーが発生します。この保護を克服するにはどうすればよいですか?
次のコードで FireFox で GreaseMonkey を使用しています
if (window.opener)
{
alert(window.opener.location.href);
}
ただし、Permission Denied
おそらくクロスドメイン ポリシーが原因で、エラーが発生します。この保護を克服するにはどうすればよいですか?
ウィンドウがそのオープナーとは異なるドメインにある場合、これを行うことはできません。 プレーンな JavaScript の場合、この情報をブロックすることはセキュリティ保護と見なされます。
Greasemonkey の場合、セキュリティ上の問題は少ないかもしれませんが、Greasemonkey の開発者はその機能を追加していません。Greasemonkey は単純な JavaScript であり、選択された制限付きの拡張機能が追加されています。
これについて機能要求を開くことはできますが、両方について適切なケースを作成できない限り、承認される可能性は低いです: これがどのように役立つか、および不注意な GM ユーザーが "pwned" されることはありません.
それまでの間、Greasemonkey のソース コードをいつでもフォークして、ドメイン間の障壁を打ち破る独自のバージョンを構築できます。
または、実際に何をしようとしているのかによっては、2 つ以上のスクリプト インスタンスの通信を伴う回避策がある場合があります。回避策については、新しい質問を開き、シナリオを詳細に説明してください。