Dlaczego obrazka otworzonego w pop up'ie, nie mogę zamknąć Operą poprzez naciśniecie go?
Nowe.document.write('<HTML> <HEAD></HEAD><BODY onclick="window.close()" background='+src+'></BODY></html>')
W IE zamyka normalnie.
Funkcja window.close() w Operze działa poprawnie.
Pokaż całą funkcję, a najlepiej adres strony, na której występuje błąd.
oto kod:
<HTML> <HEAD> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2"> <SCRIPT LANGUAGE="JavaScript"> nn4=(document.layers) ? true : false; ie4=(document.all) ? true : false; Nowe=null; function Otworz(s,w,src) { if (Nowe) { if (ie4) Nowe.close(); else if (nn4) Nowe.closed; Nowe=null }; Nowe=window.open("", "","toolbar=no,menubar=no,location=no,personalbar=no,scrollbars=no,status=no,directories=no,resizable=no,height="+w+",widt h="+s); Nowe.document.write('<HTML> <HEAD></HEAD><BODY onclick="window.close()" background='+src+'></BODY></html>') Nowe.document.close() Nowe.focus() } </SCRIPT> </HEAD> <body> <a href="#" onClick="Otworz(236, 301,'zdja.jpg'); return false"><img src="zdj1.jpg" border="0"></a> </body> </html>
Bardzo dziwne. Aby działało, należy kliknąć zaraz pod paskiem tytułu popupa, tak jakby element BODY miał wysokość jednej linijki, zamiast całego okna.
Po dodaniu onclick="close()" do elementu HTML działa, ale ISTM nie jest to poprawne.
Tak więc należy albo dodać akcję (onclick) do elementu HTML albo rozciągnąć element BODY: <body style="width:100%; height:100%" [...]>
Jakie jest wasze zdanie na ten temat?
Nie <script language>, a <script type="text/javascript">.
Zapomnij document.layers i w ogóle o NN4. Działanie strony w NN4 jest miernikiem jej marności...
<a href="nie zapomnij ustawic sensownego alternatywnego adresu!" onclick="cos; return false;">
inaczej link nie otworzy się w nowym oknie/tabie i dla posiadacza Opery taka strona kwalifikuje się do natychmiastowego zamknięcia i dalszego unikania.
A co do body, to faktycznie:
body {min-height: 100%;} jest potrzebne.
Opera rozciąga body tylko do wysokości zawartości, co jest zgodne z CSS.