2010-11-12 7 views
6

Ich habe eine zwei-Ebene UL/li-Menü, wo die li von verschiedenen onclick-Ereignisse auslösen kann.vermeiden doppelte Ereignisse (onclick) mit verschachtelten ul/li

Es scheint als das Eltern-Ereignis (ul li), wird beim Klicken auf eine ul li ul li-Element ausgelöst.

Kann ich dies auf einfache Weise vermeiden.

(Ich erwäge abzufangen zweites Ereignis mit Timer, aber denken Sie an sie als hässlich fix ...)

Grüße, /T

+0

verwenden Sie gerade Javascript oder eine js-Bibliothek, um Ereignisse zu setzen? –

+0

keine Bibliothek verwendet. – Teson

Antwort

8

Ich nehme an, Sie das Ereignis stoppen sprudelnden so, wenn Sie gerade sind mit JavaScript Sie event.cancelBubble = true

sonst haben, wenn Sie jQuery verwenden haben Sie event.stopPropagation() oder event.stopImmediatePropagation()

http://api.jquery.com/category/events/event-object/

+0

cancelBubble funktioniert perfekt, danke! – Teson

+1

cancelBubble ist kein Standard (Internet Explorer) obwohl es scheint, dass einige andere Browser es unterstützen. Um korrekt zu sein, sollten Sie auch 'event.stopPropagation()' verwenden, wenn es verfügbar ist – meouw

Verwandte Themen