Durch Klick in einer neuen seite en frame ansprechen
ccg
- javascript
Hi,
Ich will, wenn ich auf einen Link klicke, dass ich eine Seite aufrufe (index.html) und dort ein gewissen Frame anspreche. d.h. Er soll meinetwegen im rechten Frame von index.html eine Seite ändern..
Das Script läuft bei mir auch schon, nur nicht zuverlässig..
Mein Script:
<script type="text/javascript">
<!--
function abc(URI1,F1) {
helpwindow=window.open('index.html','Index');
helpwindow.focus;
myurl = "http://";
myurl = myurl + helpwindow.frames[1].location.hostname + "/verz/html" + URI1;
helpwindow.frames[1].location.href = myurl;
}
</script>
<a href="javascript:abc('1.html','Willkommen')"> text</a><BR>
<a href="javascript:abc('2.html','Willkommen')"> text2</a><BR>
<a href="javascript:abc(3','Willkommen')"> text3</a>
Wenn ich aber jetzt dieses geföffnete Fenster schon auf habe und nochmal auf ein Link klicke dann geht das Script nicht. Manchmal sagt er mir auch Fehlermelungen á la objekt blabla... ist null...
Kann mir da jemand helpen?
Wäre echt coool ;) danke im Voraus..
ccg
Hallihallo!
So, wie ich das verstehe, tritt das Problem nur dann auf, wenn das Fenster "helpwindow" noch geöffnet ist?
Du kannst das Problem dann umgehen, indem Du den Zustand (offen/ geschlossen) des Fensters kontrollierst, bevor Du nochmal versuchst, es zu öffnen. Wie das geht, steht unter
http://selfhtml.teamone.de/javascript/objekte/window.htm#closed
Wenn helpwindow.closed==true ist, dann musst Du das Fenster neu aufmachen, und kannst dann wie gehabt auf den Frame darin zugreifen.
Wenn aber helpwindow.closed == false ist, bedeutet das, daß das Fenster noch offen ist. Du darfst es also nicht nochmal öffnen.
In dem Fall müsstest Du also nur noch dafür sorgen, daß im helpwindow die index.html geladen wird, und kannst _dann_ wieder auf den Frame zugreifen.
Ich hoffe, ich konnte Dir helfen...
Viele liebe Grüße,
Der Dicki