Greasemonkey gegen einen iframe mit @include - funktioniert das?

8

Ich frage mich, ob Greasemonkey nur gegen einen iframe ausgeführt werden kann und nicht über das Elternfenster. Das übergeordnete Fenster ist Domäne A, der Iframe Domäne B und das Include im Skript wäre @include Ссылка *.

Ich brauche keine Interaktion mit dem Elternteil. Ich habe das ein paar Mal ohne Erfolg versucht. Gibt es eine domänenübergreifende Beschränkung, die verhindert, dass jemand gegen den Iframe ausgeführt wird?

PS: Der iframe hat JS-Code, der verhindert, dass er als oberstes Fenster geladen wird.

    
nopuck4you 05.11.2009, 00:11
quelle

1 Antwort

11

Nun, es ist sicherlich möglich, Greasemonkey gegen einen Iframe laufen zu lassen - in der Tat ist es ein common question , um zu bestimmen, wie die Ausführung auf iframes sowie auf der Hauptseite verhindert werden kann. Sie sollten die Umkehrung dieser Antwort verwenden können, um zu verhindern, dass Code im oberen Fenster ausgeführt wird:

%Vor%

Ich habe es getestet und Sie können @include verwenden, um Domäne B (die Domäne von iframe ) zu finden und einen willkürlichen Code auszuführen, der sie modifiziert. Ich habe den folgenden Test userscript auf einer Testseite ausgeführt und das Google-Logo erfolgreich versteckt (nur wenn Google in iframe ) ist.

%Vor%

Soweit ich das beurteilen kann, sind hier keine bereichsübergreifenden Einschränkungen vorhanden. Ich bin mir nicht sicher, was passiert, wenn iframe nicht vorhanden ist, wenn die Seite zum ersten Mal geladen wird (wenn Greasemonkey läuft).

    
npdoty 05.11.2009, 08:29
quelle

Tags und Links