tekki: [Bubbling] Onclick-Attribut dynamisch setzten

Beitrag lesen

Hallo,

Hi

Das Registrieren der Event-Handler funktioniert hervorragend. Du hast dir allerdings ein ganz anderes Problem gebaut. Dein Aufbau ist sehr kompliziert und überladen. Ich weiß nicht, ob das nötig ist.

Gibt da einen Tipp wie du das gesehen hast, bzw. ich das sehen kann. Mir ist nirgends was aufgefallen.
(Ich habe die 'Welt des Javascriptes' erst bis zum Level 4/50 gespielt ;)

Jedenfalls gibst du drei verschachtelten Elementen jeweils Click-Event-Handler. Wenn du auf den Save-Button klickst, wird div_editieren aufgerufen. Darin setzt du die Event-Handler für zwei Divs weiter oben in der Element-Hierarchie. Der click-Event steigt nun auf (Bubbling) und löst auch diese beiden Handler aus. Diese führen jeweils div_markieren aus – also die Gegenfunktion. Klar, dass das nicht funktioniert. Er springt zurück in den Normalmodus und sofort wieder in den Editier-Modus.

Also wenn ich das nun richig verstehe, ist eigentlich mein 2. Aufruf von div_markieren() unnötig, weil es durch das Bubbling schon funktionieren müsste?
Ich versuch das morgen mal durch, aber ich meine ich habe den zweiten Aufruf erst rein gemacht weil der Text nicht klickbar war, der Hintergrund aber schon.

  
<body>  
<form name="pageform">  
<div id="pagescreen">  
<div onclick="div_markieren('bubble1')" id="bubble1" class="rand">  
 <b class="o1"></b> <b class="o2"></b> <b class="o3"></b> <b class="o4"></b>  
<div id="bubble1_content" class="content">Mapname</div>  
 <b class="u4"></b> <b class="u3"></b> <b class="u2"></b> <b class="u1"></b>  
<div id="copy">copy</div>  
</div>  
</form>  
</body>  

Auf jeden Fall mal danke für den Denkanstoß und Links!