Wenn Sie auf eine beliebige Seite der Site klicken, wird jquery .apply als Fehler angezeigt. Warum?

8

Ich habe ein paar e.stopPropagation() -Ereignisse, um zu verhindern, dass Klicks für bestimmte Elemente aufblubbern. Aber jetzt scheint es, dass jedes Mal, wenn ich neben diesen Elementen auf diese Seiten klicke, dieser Fehler in der Konsole auftritt:

Uncaught TypeError: ((m.event.special[e.origType] || (intermediate value)).handle || e.handler).apply is not a function

Ich bin mir ziemlich sicher, dass es hier mit dem stopPropagation() -Handler zu tun hat, aber wie kann ich das genau beheben? Ich brauche die Funktion stopPropagation() für diese Elemente, damit diese Funktionen am Frontend richtig funktionieren / p>

Hier ist der js-Code, den ich momentan verwende:

%Vor%

Im Grunde, was hier passiert, muss ich für das Hauptmenü aktiv / sichtbar bleiben, bis irgendwo auf dem Dokument geklickt wird. Es gibt auch ein Untermenü auf einigen Seiten der Website, das auch geöffnet bleiben muss, bis irgendwo außerhalb des Menüs geklickt wird. All das funktioniert gut und wie erwartet. Das einzige Problem, das ich sehe, ist der Fehler, der in der Konsole auftaucht, der mich zu Tode erkältet, da er jedes Mal weiter erhöht wird, wenn ich auf eines der Elemente außer ul.menu-bootstrap-menu .dropdown-menu und .dropdown .dropdown-toggle klicke. Der gesamte Code ist in einen document.ready Funktionsaufruf eingebettet.

Irgendwelche Ideen wie / warum das passiert?

Ich verwende jQuery v1.11.3

Unten sind Bilder über Fehler, wenn es hilft:

Fehler in der Konsole:

Fehler in der jQuery.min Datei:

    
Solomon Closson 26.02.2016, 20:31
quelle

1 Antwort

2

Problem hier, ich denke

%Vor%

und hier

%Vor%

Sie rufen die jquery-Funktion closest für ein Nicht-jquery-Objekt eventtarget auf.

    
Eric Guan 26.02.2016 20:51
quelle