divにアニメーション機能を実装しようとしていますが、マウスがその上にマウスを置いたときにテキストが少し広がり、マウスが離れると元のサイズに戻ります。jQueryアニメーション関数が正しく機能していない
私のコードでは、マウスの上にマウスを置くたびに、ちょうど小さな四角形に収縮し続けます。私は間違って何をしていますか?
<script>
$(function() {
var container = $('div.slider').css('overflow', 'hidden').children('ul'),
slider = new Slider(container, $('#slider-nav'));
slider.nav.find('button').on('click', function() {
slider.setCurrent($(this).data('dir'));
slider.transition();
});
})();
</script>
<script type="text/javascript">
(function() {
//var dd = $('dd');
//dd.hide();
$('dd').filter(':nth-child(n+4)').hide();
$('dl').on('click', 'dt', function() {
$(this)
.next().hide()
.slideDown(200)
//.show()
.siblings('dd')
.slideUp(200);
//.hide();
//$(this).next().show();
});
})();
</script>
<script type="text/javascript">
$(function() {
$('#admission').on('mouseenter', function() {
$(this).animate({ 'fontSize': '+=2', 'height': '+=25', 'width': '+=20' }, 'swing')
});
$('#admission').on('mouseleave', function() {
$(this).stop().animate({ 'fontSize': '-=2', 'height': '-=25', 'width': '-=20' }, 'swing')
});
});
</script>
最後の<script>.... ('#admission')..
コードが問題のあるコードです。
私はその日の早い時期に働いていましたが、なぜそれが私の上に振り回されることになったのか分かりません。 – StraightUp
jQueryをこのような目的で使っている理由を聞かせてもよろしいですか?これは、CSSの単純な ':hover'-propertyで行うことができます。 – junkfoodjunkie
問題は '.stop()'だと思います。以前のアニメーションが終了する前に複数回マウスを動かすと、前のアニメーションが途中で停止し、次のアニメーションが現在のサイズ*から開始されます。もしあなたが '+ = 2'と' - = 2'を使うのではなく、特定のサイズにアニメートしてしまうと、将来のアニメーションは過去のものをビルドし続けることができないからです。また、入力と退室の両方で '.stop(true、true)'を使うこともできますが、それは[ちょっとぎこちなくなります](https://jsfiddle.net/Larw3rc7/1/)です。 – nnnnnn