Toon posts:

[DOM/2 Events] Mozilla heeft een onclick op een TextNode?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Stel de volgende code:
HTML:
1
2
3
<div onclick="alert(this.nodeName+'|'+event.target.nodeName);">
  klik me dan
</div>

In Mozilla krijg je als antwoord "DIV|#text".

Het lijkt er dus op dat het event-object vindt dat het event geïnitieerd is op de text-node (event.eventPhase is dan ook 3 [BUBBLING_PHASE]). Met andere woorden, in Mozilla heeft een TextNode een onclick event!

Maar als ik een button heb, dan is de event.target de BUTTON. Dit lijkt me een bug in Mozilla, maar waar vind ik goede info hierover. DOM Level 2 / Events en de HTML binding vond ik niet echt eenduidig. Bij Mouse Events staat "This event is valid for most elements." Hebben ze het over HTMLElements, of is een textnode ook een element? (om maar niet te spreken over voor welke tags het niet geldt).

Kort gezegt: heeft iemand iets gezien in nieuwsgroepen/forums?

Verwijderd

Topicstarter
Dit is inderdaad een bug. Hij staat op bugzilla geregistreerd.

[deze entry even toegevoegd voor zoek-doeleinden]

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 19:55

crisp

Devver

Pixelated

Verwijderd schreef op 24 september 2002 @ 00:16:
Dit is inderdaad een bug. Hij staat op bugzilla geregistreerd.

[deze entry even toegevoegd voor zoek-doeleinden]
En als je zelf even had gekeken had je ook gezien dat deze "bug" invalid is verklaard...

Intentionally left blank


Verwijderd

Topicstarter
Ik bedoelde: het was een issue.

Maar een button-onclick geeft wel de button-element als target, dus ik vind het een vaag verhaal. Dat van die DIV hebben ze dus meegenomen: ze hebben reeds 2 jaar geleden besloten dat de textnode dus de target is. Bij een <button> is de button-node de target, terwijl dezelfde button-node ook een textnode als child heeft.

Maar mij ging het dus even over het hoe en waarom. De DOM 2 events standaard is nogal vaag over html-binding.