Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

self.close(); und Browserfrage





Frage

Wenn in einem Script self.close(); verwendet wird, kommt im IE die Sicherheitsabfrage: "Die angezeigte Seite versucht das Fenster zu schließen. Soll das Fenster geschlossen werden? Ja / Nein Kennt jemand eine Metheode das zu umgehen?

Antwort 1 von powertrip

Nur, wenn du damit ein vorher per Javascript geöffnetes Fenster schliessen willst...

Antwort 2 von Friedel

Das ist mein Probem. Das ist kein JavaSCript-Fenster. Aber ich hab mittlerweile eine (umständliche) Möglichkeit gefunden. Ich hoff, daß es klappt.

Antwort 3 von Viagra

@Friedel: Die Lösung interessiert mich auch, bitte hier posten :o)

Antwort 4 von Friedel

Moin Viagra.

Wie kann ich durch ein Script, das in einem Dokument in einem Fenster läuft, den Inhalt eines Frames in einem anderen Fenster austauschen? Das andere Fenster ist opener.

Antwort 5 von Friedel

Ich habs ;-)))

Die Aufgabe war folgende:
Meine HP besteht aus einem Frameset mit einem Navigationsframe und einem Inhaltsframe. Da einige Zeitgenossen meine HP mit ihrer verlinkt haben, meine HP aber nicht in einem eigenen Fenster geöffnet haben, sondern in einem Frame ihres Framesets, habe ich (schon vor über 1 Jahr) in alle meine Seiten ein Script eingebaut.
<script language="JavaScript">
<!--
if (parent.x != "meineID"){
parent. location.href = "http://www.friedels-home.com/index.htm";
}
else {
x = "1meineID";
}
//-->
</script>
Das Script prüft, ob es ein Übergeordnetes Frameset gibt, und wenn ja, ob dort die Variable x den Wert meineID hat. Wenn das nicht der Fall ist, wird die URL des Übergeordneten Fensters auf meine Startseite umgeleitet.
Das Script hat gleichzeitig bewirkt, daß sich alle meine Seiten nur durch meine Startseite aufrufen lassen.
Jetzt will ich folgendes erreichen: Wenn jemand eine beliebige Seite, die zu meiner HP gehört, aufruft, soll statt dessen mein Frameset mit dieser Seite im Hauptfenster gezeigt werden.

Lösung:
Im Startframeset und in der Navigationsseite bleibt das alte Script. Alle anderen Seiten bekommen statt dessen folgendes Script:

<script language="JavaScript">
<!--
var nnw;
if (parent.x=="meineID"){
x = "meineID";
}
else {
var y= document.URL;
z=window.open("weiterleitung.htm","147yAq0", "width=200,height=200,location=0,status=0,menubar=0,toolbar=0,directories=0");
z.blur();
}
//-->
</script>

Dadurch wird geprüft, ob die Seite Bestandteil meines Framesets ist. Wenn nicht, wird im Hintergrund ein neues Fenster mit der Seite weiterleitung.htm geöffnet.

Die weiterleitung.htm enthält folgendes Script:

<script language="JavaScript">
<!--
var a= opener.y;
opener.location="index.htm";
setTimeout("nx=opener.open(a,inhalt)",3000);
setTimeout("self.close()",5000);
// -->
</script>

Dadurch wird in der Variable a die URL der öffnenden Seite gespeichert. Dann wird im anderen Fenster mein Startframeset aufgerufen. Dann wird 3 Sekunden gewartet, damit mein Startframeset geladen werden kann (länger sollte es auch mit dem langsamsten Modem nicht dauern, schließlich müssen die Frameseiten nicht geladen werden) und dann wird im Frame "inhalt" das öffnenden Fensters die Seite mit der ursprünglichen URL aufgerufen. Nach 5 Sekunden wird dieses Fenster (das nach wie vor im Hintergrund ist) geschlossen.

Antwort 6 von Friedel

Das alte Forumsproblem: In der Zeile setTimeout("nx=opener.open(a,inhalt)",3000); fehlen vor und nach Inhalt die einfachen Anführungszeichen, weil man die hier nicht posten kann.

Gleich mal ein Test, ob es mit UC geht:
setTimeout("nx=opener.open(a,'inhalt')",3000);

Antwort 7 von Friedel

Mit UC geht es auch nicht. Der wird in der Vorschau schon umgewandelt und verursacht beim Speichern einen Fehler. Man muß also doppelt codieren. Man muß also den UC auch durch UC ausdrücken. In der Vorschau ist dann der normale UC und im Posting erscheint dann das einfache Anführungszeichen *ggg*.

Antwort 8 von Viagra

Hat zwar ne Weile gedauert, aber ich habs geblickt. Durch die frameübergreifenden Variablen hat man eine Menge Möglichkeiten (wie dein Menü schon eindrucksvoll beweist).

Das mit dem Unicode muß ich mir unbedingt mal anschauen (soweit ich mich erinnern kann hast du dazu auch Informationen auf deiner Seite). Mit dem könnte man auch in Datenbanken einfache Anführungszeichen speichern, SPITZE! :o)

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: