Hallo,
hier ist mein Code:
https://codepen.io/nicerboy/pen/LwORNV
Wenn man den Button klickt, erscheint ein div. Wenn man das div klickt, erscheint das nächste div. Wenn man den Button verschiebt, wird nicht »geklickt« (was gut ist). Wenn man das div (Klasse »trip«) verschiebt, wird dieses damit angeklickt (was nicht gut ist).
Regeln lässt sich das mit dem »mouseup«-Befehl. Dafür müsste man vermutlich dieses »let containers = $('.trip').hide(); ... });« zu jQuery machen und in ein mouseup-Teil einbauen. Das schaffe ich aber leider nicht.
Wisst ihr, wie das geht?
Wäre euch seeehr dankbar.
Grüße
jQuery: Click events bei verschiebbaren Objekten
-
-
Da gibt es wohl auch mehrere Lösungen. Mit mouse up und down auslesen. Oder drag start und stop auslesen und dann damit arbeiten.
Meine einfachste Lösungs Idee wäre das man Doppel Click nutzt für die div Container wechseln.
Dafür brauch es nur 3 Buchstaben die man im Code dazu schreibt.
Falls es nix für dich ist kann man dir ja nee andere Lösung suchen
-
Mein Vorschlag: Das selbe Verfahren wie beim Button anwenden: Prüfen, ob die Klasse, die das Dragging anzeigt, nicht vorhanden ist und abhängig davon das Wechseln der Container durchführen:
Code
Alles anzeigencontainers.on('mouseup', function() { //Get current element and next sibling let elem = $(this); let next = elem.next('.trip'); if (!elem.parent().hasClass('ui-draggable-dragging')) { //Does sibling exist? if (next.length) { next.show(); } else { firstContainer.show(); } elem.hide(); } });
https://codepen.io/Sempervivum/pen/rXYzba
BTW: Elegant, das Wechseln der Elemente. Hast Du das selber entwickelt?
-
Perfekt! Vielen, vielen Dank!
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!