JS Funktion - Unerklärlicher mehrfacher Aufruf

  • Hey zusammen,


    ich stehe vor einem unerklärlichen Problem. Ich habe die Add-Funktion eines Warenkorbes ein wenig erweitert und die Hauptaddfunktion in eine Funktion ausgelagert um diese dann immer wieder aufrufen zu können. Nun wird diese Funktion jedoch mehrfach aufgeruft und das Produkt dann auch mehrfach hinzugefügt obwohl es nur 1 mal hinzugefügt werden soll.


    Ich habe auf die akkuButtons zu erst über eine for-schleife die Klick-Funktion intialisiert. Da diese for schleife 2-mal durchlaufen wird dachte ich mir , dass die Funktion im Falle "Ja" 2 mal aufgerufen wird. Dann habe ich die For-Schleife entfernt und manuell die Funktionen auf den akkuButtons intialisiert. Auch das brachte keine Änderung. Was für mich auch unerklärlich ist, ist dies, dass diese Funktion wie gesagt mehrfach aufgerufen wird (habe ich mittels debugging erfahren) und plötzlich nach 2 Klicks 6 x dieses Produkt im Warenkorb steht.


    Live könnt ihr es hier testen: https://shop.darkhorizongroup.…mittel/aurora-rc-armor220


    Wenn ich die Funktion ohne meine Erweiterung aufrufe werden die Produkte normal hinzugefügt - so wie es sein sollte.


    So sieht meine Erweiterung aus:

    Funktion Add Einkauf (daran habe ich nichts geändert - einfach nur den Funktionsinhalt in diese Funktion eingelagert):

    Ich hoffe ihr könnt mir helfen dieses Problem zu lösen.


    Stef

  • Ich bin da nicht bis ins letzte Detail eingestiegen, aber mir scheint, das Problem liegt darin, dass die Eventlistener für die accuButtons innerhalb des Click-Handlers für #button-cart registriert werden. D. h. bei jedem Klick auf #button-cart kommt jeweils ein neuer Eventhandler dazu, so dass es immer mehr Eventhandler gibt, die getriggert werden.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!