location ist gesperrt
Serge Ratke
- javascript
0 Ben0 Sven Rautenberg
Hi Leutz,
Problem:
Beim Versuch einem Frame "main" eine Url zuzuweisen tritt folgender javascript Fehler auf:
Zugriff wurde verweigert. --> Hier tritt der Fehler auf.
function link3(text1, text2, text3) {
parent.navilinks.document.location = text1;
--> parent.main.document.location = text2;
parent.bottom.document.location = text3;
}
Woran kann es liegen?
Hallo Serge,
lass mal das document weg. location ist kein document-Objekt, sondern gehört eigentlich zu window.
Hier müsste es also
parent.navilinks.location = text1;
usw. heißen.
Viele Grüße
Ben
Moin!
Beim Versuch einem Frame "main" eine Url zuzuweisen tritt folgender javascript Fehler auf:
Zugriff wurde verweigert. --> Hier tritt der Fehler auf.function link3(text1, text2, text3) {
parent.navilinks.document.location = text1;
--> parent.main.document.location = text2;
parent.bottom.document.location = text3;
}Woran kann es liegen?
Du hast drei Probleme.
1. Wie Ben schon ganz richtig sagt: location ist ein Subobjekt von window, nicht von document.
2. Es heißt location.href, nicht nur location. Dass es der IE trotzdem richtig versteht, ist bedauerlich - alle anderen Browser kacken bei dieser Anweisung ab.
3. Die Meldung "Zugriff verweigert" bedeutet, dass in dem Frame eine Seite geladen ist, die nicht von deiner Domain kommt. Diese Meldung kann nicht umgangen werden, sie ist elementarer Bestandteil der "Same-Origin-Policy" von Javascript. Sorge dafür, dass alle deine Frameseiten von ein-und-derselben Domain geladen werden, und du hast das Problem nicht mehr.
- Sven Rautenberg
Da hast du völlig recht, dass die seite nicht auf demselben Server ist. Danke für die Tipps. Aber das alles auf dem gleichen Server liegt klappt nicht. Trotzdem ... nach der Änderung der javascript anweisung, hat alles wunderbar geklappt.
Nochmal Danke für die Hilfe