Struppi: Title zuweisen (lokal funktioniert's, online nicht!)

Beitrag lesen

Zurueck zu meinem Problem, das auftritt, wenn ich eines der Thumbnails im Text anklicke:
Im IE6 (sowohl an der Uni als auch auf meinem Laptop, habe hier leider nichts anderes zum Testen) gibt's einen "Fehler auf der Seite" und in den Details steht "Unbekannter Fehler". Im Title wird der Pfad des Bildes nicht durch den in der Variable 'name' gespeicherten String ersetzt und das Popup-Fenster schliesst sich nicht automatisch, wenn ich ins Hauptfenster klicke.

Da ich im IE JS ausgeschaltet habe, was jeder halbwegs sicherheitsbewußte Surfer machen sollte, kann ich das nicht prüfen.

var pic = null;

function poppic(picture, name)
{
pic = window.open("pics/" + picture, "pic", "width=820,height=620,top=50");
pic.focus();
pic.document.title = name;

du überschreibst hier zwar den Titel, der aber nach dem laden des Bildes wieder von der URL des 'picture' überschrieben werden sollte. Du musst warten bis das Bild fertig ist.

Besser ist es in das Fenster HTML Code zu schreiben, da äßt sich dann auch simpel der Titel einbauen.

...

window.onfocus = function ()
{
  if(!pic) return;
  pic.close();
  pic = null;
  window.onfocus = null;
};

Hier vielleicht einfacher:

pic.onblur = function () { this.close();};

}

Der Aufruf liesse sich auch besser, d.h. einfacher für dich und benutzbar für Besucher mit abgeschaltetem JS, gestalten:

<a href="speightsbrewery.jpg"
target="pic"
onclick="poppic(this.href, 'Degustation als Abschluss der Brauereibesichtigung');return false;"

<img src="pics/speightsbrewery_sm.jpg" align="left" hspace=6 vspace=9 border=0></a>

Ach, grad fällt mir auf, dein Konstrukt ist ja völlig anders, du hast ja hier noch dieses:
function wwOpen (url, name, attributes) {
var currentTime = new Date();
if (name == "_top" || name == "_self" || (currentTime.getTime() - wwLastClick.getTime()) < 3000) {
if (attributes) {
   return wwRealOpen (url, name, attributes);
} else if (name) {
   return wwRealOpen (url, name);
} else {
   return wwRealOpen (url);
}
}

}

Warum du dass machst ist mir ein Rätsel, aber die funktion window.open weiter oben liefert aufgrund dessen nicht immer einen Wert zurück. Was Mozilla dir auch sagt.

Ich geb dir mal die Fehlermeldungen und Warnungen aus dem Mozilla:
Warning: function wwOpen does not always return a value
Source File: http://8ung.at/nz-reise/poppic.js
Line: 21
Source Code:
}

Warning: assignment to undeclared variable onError
Source File: http://8ung.at/nz-reise/poppic.js
Line: 5

Warning: assignment to undeclared variable wwRealOpen
Source File: http://8ung.at/nz-reise/poppic.js
Line: 23

und nach einem Klick auf ein Bild:

Error: pic has no properties
Source File: http://8ung.at/nz-reise/poppic.js
Line: 33

Vielleicht hilft dir das weiter.

Deinen Dokumenten fehlt übrigens der DOCTYPE und 'pt' solltest du nicht als Maßeinheit für den Monitor einsetzten, da es keine points auf dem Monitor gibt sondern 'px'

Struppi.