Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: edycja eventów elementów
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
flashdev
Kod
document.getElementById("id").onclick="alert('hello world')";


W operze działa mi taki skrypt prawidłowo, ale w firefoxie, chrome i ie już nie działa.
Jak edytować te właściwości, żeby działały dla każdej przeglądarki?
Czy jedyna możliwość to doklejenie akcji bezpośrednio w kodzie html?
erix
Google: attachEvent

Frameworki JS mają coś takiego zaimplementowane.
flashdev
Cytat(erix @ 15.08.2009, 00:06:02 ) *
Google: attachEvent


To też działa tylko w operze.

Cytat(erix @ 15.08.2009, 00:06:02 ) *
Frameworki JS mają coś takiego zaimplementowane.


Wole sam wiedzieć jak to działa.

Edit:

Ok, w tej chwili mi działa funkcja:
Kod
addEventListener("click", function(){;/* action */;}, false);


Przy czym to rozwiązanie nie działa w IE.
Fafu
[JAVASCRIPT] pobierz, plaintext
  1. function addEvent( obj, type, fn )
  2. {
  3. if (obj.addEventListener)
  4. obj.addEventListener( type, fn, false );
  5. else if (obj.attachEvent)
  6. {
  7. obj["e"+type+fn] = fn;
  8. obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
  9. obj.attachEvent( "on"+type, obj[type+fn] );
  10. }
  11. }
  12.  
  13. // uzycie
  14. addEvent( document.getElementById('cos'), 'click', function(){ alert('test'); } );
[JAVASCRIPT] pobierz, plaintext

http://www.quirksmode.org/blog/archives/20...e_winner_1.html
http://perfectionorvanity.com/2006/08/27/n...awanie-zdarzen/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.