Men kan nån se varför detta script inte funkar?
Jag lyckades till och med få en MSIE5 att hänga sig, men nu funkar den på både IE5 o 6 dock endast när jag klickar på länken, trycker back (eftersom bilden först inte syns) och forward, då syns bilden.
----------
function imageLoad(imageSrc){
bildsidan = window.open('','_self');
bildsidan.document.write('<html><head><title></title><META HTTP-EQUIV="imagetoolbar" CONTENT="no"><META HTTP-EQUIV="Expires" CONTENT="-1"></head>')
bildsidan.document.write('<body bgcolor="#FFFFFF" onContextMenu="return false;" onSelectStart="return false;" onDragStart="return fals;">');
bildsidan.document.write('<center><img src="' + imageSrc + '" alt="Klicka för att gå tillbaka" name="bilden" onClick="history.back()"></center></body></html>');
Jag lyckades att få det att funka både med och utan .open() och .close()
Är dessa extra rader för Netscape?
Fråga2
Jag hade stora problem i början, eftersom jag trodde att det skulle räcka med open() o close().
Det löste sig inte förrän jag skrev om allt (.write(...) till en rad. Hur kommer det sig att det måste vara så?
Jag har för mig att jag kunnat få det att fungera så.
Fråga3
Slutligen, så undrar jag, vad det innebär att skriva void()
1. Nej, open() respektive close() är inte bara för Netscape. Jag antar att du fick det att fungera utan dessa med Internet Explorer Med en striktare webbläsare som Mozilla dock, fungerar det inte.
2. Följande fungerar:
function imageLoad(imageSrc){
var bildsidan = window.open('','_self');
bildsidan.document.open();
bildsidan.document.write('<html><head><title></title><META HTTP-EQUIV="imagetoolbar" CONTENT="no"><META HTTP-EQUIV="Expires" CONTENT="-1"></head>');
bildsidan.document.write('<body bgcolor="#FFFFFF" onContextMenu="return false;" onSelectStart="return false;" onDragStart="return false;"><center><img src="' + imageSrc + '" alt="Klicka för att gå tillbaka" name="bilden" onClick="history.back()"></center>');
bildsidan.document.write('</body></html>');
bildsidan.document.close();
}
3. void är en operator som t.ex. kan användas för att exekvera JavaScript-kod med javascript: utan att ändra det aktuella fönstrets innehåll, d.v.s. void gör att att ingenting returneras. Testa följande två kodsnuttar så får du se!
Vilken otrolig skillnad mellan med eller utan void.
Den utan förstör i window.open exemplet.
Det är konstigt att jag inte stött på det problemet innan, men troligen syns det mest i window.open eftersom det rör sig om att öppna nya fönster, eller är det för att det rör sig om en <a href>-tag?
Angående punkt2, så verkar det inte funka för mig. Det bästa verkar vara att lämna hela paketet i en enda rad.
Mest av nyfikenhet så undrar jag varför det kan vara så. Är det så att man måste skriva nåt plus i slutet?