php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 23.08.2009, 14:43   #1 (permalink)
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 485
PHP-Kenntnisse:
Fortgeschritten
Frank ist zur Zeit noch ein unbeschriebenes Blatt
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard [Erledigt] OnClick event abbrechen

Hallo php.de'ler,

ich habe gerade ein kleines Problem mit dem onClick event in Javascript.
Ich habe 2 verschachtelte (bzw später 3 verschachtelte - aber das ist jetzt nicht wichtig) <ul>'s. Das sieht so aus
HTML-Code:
<ul>
  <li><a href="#">Eintrag 1</a></li>
  <li onclick="open(this)">Kategorie
    <ul>
      <li><a href="#">Eintrag2</a></li>
      <li onclick="open2(this)">Unterkategorie
        <ul>
          <li><a href="#">Eintrag3</a></li>
        </ul>
      </li>
    </ul>
  </li>
</ul>
Mein Problem besteht nun darin, dass wenn man auf Unterkategorie klickt nicht nur die Funktion open2() ausgelöst wird, sondern danach auch die Funktion open() aufgerufen wird. Das letztere würde ich gerne verhindern.

Gibt es eine Möglichkeit ein onclick event abzubrechen? - Sodass ich sozusagen in open2() sagen kann 'stopEvent()' o.ä., sodass es nicht an open() weitergegeben wird?
__________________
Frank ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 23.08.2009, 14:53   #2 (permalink)
Supermoderator
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 6.071
PHP-Kenntnisse:
Fortgeschritten
Manko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer AnblickManko10 ist ein wunderbarer Anblick
Standard

Das nennt man Event Bubbeling. Einfach mal googlen. Die Lösung lautet event.stopPropagation().
__________________
Programm Bürgerschutz:
Geistiges Eigentum: alles ist käuflich! ― Kinderschutz: haltet die Eltern fern! ― Einbruchsprävention: sperrt den Weihnachtsmann weg!
Manko10 ist offline   Mit Zitat antworten
Alt 23.08.2009, 15:50   #3 (permalink)
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 485
PHP-Kenntnisse:
Fortgeschritten
Frank ist zur Zeit noch ein unbeschriebenes Blatt
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

Das Problem ist ja, dass ich beim onclick kein event mitgeliefert bekomme.
also
Code:
function onClickHandler(e) {
    e.stopPropagation()
}
würde dementsprechend nicht funktionieren.
Habe allerdings über google gerade
Code:
window.event.cancelBubble = true
gefunden. Soll allerdings nur in den Microsoft Produkten funktionieren.

Ich werde das mal testen und bei Fragen melde ich mich wieder.

Vielen dank erstmal für deine Antwort und die darin enthaltenen Keywords die mich bei der Suche doch erheblich weiterbringen


//Edit habe es wie folgt gelöst
HTML-Code:
<li onclick="open(event, this)">...
Code:
function open(e, origin) {
    e.cancelBubble = true
    ...
}
Nochmal ein großes Danke an Manko10
__________________

Geändert von Frank (23.08.2009 um 16:21 Uhr).
Frank ist offline   Mit Zitat antworten
Alt 24.08.2009, 15:12   #4 (permalink)
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 21.292
PHP-Kenntnisse:
Fortgeschritten
nikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblicknikosch ist ein wunderbarer Anblick
Standard

In jQuery gehts glaube ich auch durch ein return false; in der Aktions-Funktion.
__________________
--
„Eins ist Fakt: Gescannt wird nackt!“

Privatsphäre 2.0 - Nacktscanner mit Eyetracking.
Unser Flugzeug darf kein geschlechtsfreier Raum sein.
--
nikosch ist offline   Mit Zitat antworten
Alt 25.08.2009, 12:15   #5 (permalink)
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 273
PHP-Kenntnisse:
Fortgeschritten
xm22 befindet sich auf einem aufstrebenden Ast
Standard

Nicht nur in jQuery, sondern generell
xm22 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] onclick, onmoseover,onmouseout in 1 href FreddyS HTML, Usability und Barrierefreiheit 11 31.07.2009 20:29
onclick vor seitenaufruf ausführen KokosDesign JavaScript, Ajax und mehr 4 27.05.2009 01:25
Event: User Regestrierung in die Datenbank??? Dunkelelf9 Datenbanken 2 22.12.2008 15:49
Onclick Oncfocus etc Hu5eL JavaScript, Ajax und mehr 5 30.05.2008 11:20
jQuery: Parameter an onclick Event ecomeback HTML, Usability und Barrierefreiheit 1 08.04.2008 11:23
für jedes Event immer neuen Ordner anlegen, sinnvoll? Matthiasnet PHP Tipps 2007 3 19.05.2007 11:57
Event in Kalender ausgeben zoro PHP Tipps 2007 3 02.05.2007 13:40
JS - node, onClick Event hinzufügen, MSIE Zergling-new HTML, Usability und Barrierefreiheit 3 21.07.2006 19:46
JS: Frage zu onClick in Verbindung mit einer Funktion HTML, Usability und Barrierefreiheit 1 04.11.2005 16:06
Suche PHP Event Kalender PHP Tipps 2005-2 2 28.09.2005 19:57
Variable mit onClick übergeben? PHP Tipps 2005-2 2 22.09.2005 15:33
[Erledigt] htaccess, Startseite bei felschem Passwort oder Abbrechen Server, Hosting und Workstations 1 02.09.2005 13:31
mit onClick PHP datei ausführen lassen Asipak HTML, Usability und Barrierefreiheit 15 22.08.2005 20:44
mit onclick() Datei aufrufen HTML, Usability und Barrierefreiheit 6 11.08.2005 11:22
probleme mit event datenbank Datenbanken 1 04.09.2004 00:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript event abbrechen, javascript onclick abbrechen, onclick abbrechen, jquery event abbrechen, javascript onclick verhindern, stop the event from propagating, event abbrechen, event cancel propagation javascript, php abbruch benutzer verhindern, onmouseclick stop, jquery click event stoppen, onclick verschachtelt, javascript onclick href event cancel, ja event abbrechen, javascript onclick event stop, onclick verschachtelte li, javascript events abbrechen, jquery event stop, code für abrechen, onclick stop event propagation

Alle Zeitangaben in WEZ +1. Es ist jetzt 09:02 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum