/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
En erstatning for window.open ???
Fra : Esben Boye-Jacobsen


Dato : 06-05-03 18:53

Hej Nyhedsgruppe!

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...

Så jeg ville lige høre om det findes et alternativ?
(se problemet på http://www.esbenboye.dk/Sites/subs.asp)

Mvh
Esben boye-Jacobse

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Lasse Reichstein Nie~ (06-05-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 06-05-03 19:27

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.'

Esben Boye-Jacobsen (06-05-2003)
Kommentar
Fra : Esben Boye-Jacobsen


Dato : 06-05-03 22:26


>
> > (se problemet på http://www.esbenboye.dk/Sites/subs.asp)
>
> Beskriv problemet :)
>

Jeg har testet siden i Opera 6.05, og når jeg klikker på et billede/link, så
sker der... INTET! - uanset om jeg har krydset boksen af eller ej!

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Lasse Reichstein Nie~ (06-05-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 06-05-03 22:37

Esben Boye-Jacobsen <esbenboye@jacobsen.dk> writes:

> > > (se problemet på http://www.esbenboye.dk/Sites/subs.asp)

> > Beskriv problemet :)

> Jeg har testet siden i Opera 6.05, og når jeg klikker på et billede/link, så
> sker der... INTET! - uanset om jeg har krydset boksen af eller ej!

Hvis du slår javascript errors til, så siger den da også:

name: ReferenceError
message: Reference to undefined variable: No such variable 'kryds'

Det er altså netop det problem jeg nævnte. Man kan ikke bare skrive
"kryds" (eller "window.kryds", som er det samme) og forvente at have
fat i et element med name="kryds". Det virker i nogle browsere, men
der er ingen standard der kræver det.

Problemet er altså ikke window.open, men kryds.checked.

/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.'

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste