Ich kann meine Animation nur einmal fertig stellen, ohne die Seite neu zu laden. Es gibt eine ähnliche Frage zu dem gleichen Problem, aber ich kann es nicht scheinen, es auf mouseenter wieder zu entfachen. Danke im Voraus.Warum wird die jQuery-Animation nur einmal ausgeführt?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Practice Page</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<style>
#root {
height: 100px;
width: 100px;
background-color: darkblue;
position: absolute;
margin: auto;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
</style>
</head>
<body>
<div id="root">
</div>
<script>
$(document).ready(function() {
$('#root').mouseenter(function() {
$(this).animate({
'right': '200'
});
});
$('#root').mouseleave(function() {
$(this).animate({
'left': '200'
});
});
});
</script>
</body>
</html>
Da der Wert von right und left nach Abschluss des Zyklus aus dem Element entfernt werden muss. Dies kann leicht mit CSS-Übergängen erreicht werden – karthick
Können Sie erklären, was Sie erreichen möchten? Versuchen Sie, es gleiten oder wachsen zu lassen? – Soviut