Just nu i M3-nätverket
Gå till innehåll

Ersättning för getElementsByClassname?


rumbleinthejungles

Rekommendera Poster

rumbleinthejungles

Ditt förslag att skippa confirm fungerar, men nu vill jag ha confirm kvar.

 

Jag har separerat den funktion som styr menyn från den som kontrollerar vad som händer när man klickar i menyn.

 

Jag har, som du ser, testat getElementsByClassname och det fungerar för alla webbläsare utom IE.

 

Nymans lösning verkar väl så komplicerat för en nybörjare.

 

Länk till kommentar
Dela på andra webbplatser

nej, det är inte alls komplicerat, det är bara att kopiera och klistra in funktionen sedan anropa som du gör med de andra metoderna.

 

lankar = getElementsByClassName("extern","a");
for(i=0;i<lankar.length;i++){
//osv
}

 

 

 

Länk till kommentar
Dela på andra webbplatser

rumbleinthejungles

Jag har gjort det och det "slog ut" den funktion som kontrollerar menyn.

 

Länk till kommentar
Dela på andra webbplatser

rumbleinthejungles

Det verkar som att jag fått till det nu.

 

if (document.getElementsByClassName) {

external = document.getElementsByClassName('external');

for (var i = 0; i < external.length; i++)

external.onclick = function() {

 

if(confirm("Vill du verkligen lämna xxxxxxx?"))

{

 

window.open(this.href,'_blank');

return true;

}

else

{

return false;

}

}

}

 

 

else {

i = 0;

a = document.getElementsByTagName("a");

while (element = a[i++]) {

if (element.className == "external") {

a[i-1].onclick = function() {

if(confirm("Vill du verkligen lämna xxxxxx?"))

{

window.open(this.href,'_blank');

return true;

}

else

{

return false;

}

}

}

}

}

 

 

I need a vacation....

 

Länk till kommentar
Dela på andra webbplatser

rumbleinthejungles

En sak som du kanske skulle kunna kasta ljus över: ett klick på en länk öppnar den länkade sidan i ett separat fönster. Det är avsett. Men den länkade sidan öppnas också på traditionellt sätt, dvs i det fönster där länken finns. Den länkade sidan öppnas alltså en gång i onödan. Kan du se vad det beror på?

 

Länk till kommentar
Dela på andra webbplatser

rumbleinthejungles

Ändrade till:

 

window.location=this.href,'_blank';

 

 

och nu fungerar det. :-I

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...