Esben Boye-Jacobsen <esbenboye@jacobsen.dk> writes:
> Jeg har lavet et script der åbner et nyt vindue, hvis en <input
> type="checkbox"> er krydset af...
> Problemet er dog imidlertid at Opera (og nok også andre browsere)
> ikke understøtter dette...
Det virker skam fint i min Opera 7. Hvad er problemet?
Du burde nok undgå javascript:-links og i stedet lave noget i stil med
<a href="rigtig url" onclick="nytwin('rigtig url');return false;"> ... </a>
Det har to fordele:
1) Det virker også uden javascript.
2) javascript:-urler forventes at returnere html-koden til den nye side,
ikke bare udføre koden. Det er et onclick-handleren er til for.
Du bør også ændre
if (kryds.checked) ...
til fx.
if (document.getElementById("kryds").checked) ...
Det er ikke alle browsere der gør navngivne (med name=...) elementer
være tilgængelige som en egenskab ved window-elementet (som er det
du antager her). Jeg mener ikke Mozilla gør.
Her skal du selvfølgelig så tage højde for at ikke alle browsere forstår
document.getElementById heller, så hvis du vil være helt sikker så
skal du til at tjekke for document.getElementById, document.all, og
hvad Netscape 4 nu forstår.
Personligt ville jeg lave en global variabel,
var erKrydset = false;
og tilføje en handler til selve checkboxen
onchange="erKrydset = this.checked"
Det er temmeligt portabelt.
> Så jeg ville lige høre om det findes et alternativ?
Et alternativ til window.open til at åbne vinduer i javascript... Ikke
mig bekendt. Den virker skam også fortræffeligt i alle de browsere jeg
har set.
> (se problemet på
http://www.esbenboye.dk/Sites/subs.asp)
Beskriv problemet :)
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:
http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'