[JS]- Nie działająca funkcja obsługi zdarzenia

IkonaBudzik = document.getElementById("IkonaBudzik").onClick=document.write("lol");

Kod JS

[/code]

Kod HTML

Gdy odświeżę stronę od razu skrypt wypisuje ‘lol’ na stronie. Dlaczego?

onload = myonclick;

function myonclick(){

document.getElementById('IkonaBudzik').onclick = Function('document.write("lol");');

}

Ale polecał bym jednak skorzystać z jquery

A czy nie da się użyć prostszej formy?

możesz spróbować samo

document.getElementById('IkonaBudzik').onclick = Function('document.write("lol");');
onload = myonclick;

function myonclick(){

document.getElementById('IkonaBudzik').onclick = Function('document.write("lol");');

}

Ta metoda działa, ale zdjęcie budzika po napisaniu ‘lol’ znika, a na adresie na końcu pojawia się znak ‘#’. Można zrobić tak, aby zdjęcie widniało nadal?

to może daj

document.getElementById('IkonaBudzik').onclick = Function('document.getElementById("tutaj").innerHTML="lol";');

a tam gdzie ma się pojawić tekst

[/code]

jeśli napis ma być dodany za obrazkiem:

document.getElementById('IkonaBudzik').onclick = function(){

		this.parentNode.appendChild(document.createTextNode('lol'));

		this.onclick = null;

	}

lub:

document.getElementById('IkonaBudzik').onclick = function(){

		this.parentNode.innerHTML += 'lol';

	}

(choć pierwsze rozwiązanie uważam za lepsze)