Heim >Web-Frontend >js-Tutorial >Wie kann ich die Ereignisweitergabe in jQuery stoppen, um zu verhindern, dass übergeordnete Ereignishandler ausgelöst werden?
Verhindern der Weitergabe übergeordneter Ereignishandler
Stellen Sie sich eine Baumstruktur von Divs vor, bei der durch Klicken auf ein übergeordnetes Div dessen untergeordnete Divs unsichtbar gemacht werden. Allerdings löst das Klicken auf ein untergeordnetes Div auch das Klickereignis des übergeordneten Elements aus. Um dieses Problem anzugehen, benötigen wir eine Möglichkeit, die Ereignisausbreitung im Baum zu verhindern.
Ein effektiver Ansatz mit jQuery besteht darin, den untergeordneten Elementen einen Click-Handler hinzuzufügen, der die Ereignisausbreitung gezielt stoppt:
function handler(event) { event.stopPropagation(); // additional code here } $('#a').add('#b').click(handler);
In diesem Code wird die Methode stopPropagation() verwendet, um zu verhindern, dass das Ereignis zum übergeordneten Div übergeht. Wenn auf Div „#b“ geklickt wird, wird die Handlerfunktion aufgerufen, die verhindert, dass das Ereignis Div „#a“ erreicht. Folglich wird das Klickereignis des übergeordneten Elements nicht ausgelöst, wodurch die Sichtbarkeit von div „#c“ erhalten bleibt.
Das obige ist der detaillierte Inhalt vonWie kann ich die Ereignisweitergabe in jQuery stoppen, um zu verhindern, dass übergeordnete Ereignishandler ausgelöst werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!