Göra om var till sträng i onclick = function ()

JavaScript

2 svar · 313 visningar · startad av oskob

Medlem sedan maj 20021 558 inlägg
Trådstart#1

Hej!

Jag jobbar med ett script som går igenom alla länkar på sidan och lägger till ett onclick-värde på vissa utvalda länkar. Men det beter sig inte som jag vill.
Följaned kodsnutt ingår i en for-loop som går igenom alla länkar och kollar om det är rätt typ av länk.

getLinks*.onclick = function () {initImg(this,this.getAttribute("title"), id); return false;}

id++;

Det jag vill ska hända att den lägger in variabeln id som en sträng. id ändras ju hela tiden och som det är nu så skickas den som en hänvisning till en variabeln. id får alltså det värde den har när användaren klickar och inte det värde den har när funktionen skrivs.
Jag vill alltså skicka den som den är just i det tillfället som koden körs.

Tack på förhand!*

Medlem sedan aug. 20039 340 inlägg
#2
getLinks[i].myId = id;
getLinks[i].onclick = function () {initImg(this,this.getAttribute("title"), this.myId); return false;}

Du sparar id't som ett attribut hos länken, som du sedan kan läsa ut i funktionen.

Medlem sedan maj 20021 558 inlägg
#3

Kan man bara hita på attribut hur som helst alltså?
Gött! Tack!

263 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)