Ich habe eine einfache div mit einer Onclick-Funktion (i Hinweis für die Lesbarkeit zu Inhalt des svg entfernt):div auf Klick nicht während des Übergangs gefeuert
<div id="sidebar-toggler">
<svg></svg>
</div>
body.on('click', '#sidebar-toggler', function() {
$('#sidebar').toggleClass('collapsed');
});
dies ohne ein Problem ist Workin. Aber die div hat auch eine traqnsition ein wenig nach rechts auf schweben zu bewegen:
&:hover
left: 30px
transition: left 0.4s ease-out
Nun, manchmal (sehr oft) während des Übergangs, das Click-Ereignis nicht ausgelöst wird. Ist das ein häufiges Problem und gibt es dafür eine Lösung? Ich habe versucht, einen Wrapper div arround zu machen, der so groß ist wie die Animationen. Aber das Problem existiert immer noch.
Was ich getan habe ist eine Wrapper-arround meine Runde div wie folgt hinzuzufügen:
() = Round div (button)
_________
| | = wrapper
_________
transition
From:
_________
|() |
_________
To:
_________
| ()|
_________
Und natürlich remapped ich die Onclick an den Wrapper. Ich denke, weil der onclick auf dem Wrapper ist, und es gibt jetzt Übergang auf dem Wrapper, der onclick sollte gefeuert werden. Aber wie gesagt, bisher kein Erfolg.
Das ist interessant zu wissen, aber warum funktioniert meine Lösung nicht mit dem statischen Wrapper? (Wirklich interessant, dass es ein Widerstand mit dem Übergang sein wird, vielen Dank) –
Ich denke, ich habe es, es scheint, dass es egal ist, auf welchem Element der Onclick ist, solange das vorderste Element unter der Maus bewegt sich, zählt es als Ziehen? Ist das richtig ? Weißt du, warum das Ziehen die relative Mausbewegung zu einem Element ist und nicht zum Bildschirm selbst? –