まず、紛らわしいタイトルで申し訳ありません。jQueryでばかげた問題に直面しています。これが私のコードです:
$j('.parent').hover(function(){
var newWidth = $j(this).find('img').length * 70; // I need number of images within parent and multiply it by 70
$j(this).stop().animate({'width':newWidth},700); // <-- This does not work
}, function(){
$j(this).stop().animate({'width':'70'},700); // Back to original width
});
しかし、アニメーションはありません。newWidth をアラートすると、正しい答えが得られます。値が newWidth に割り当てられている間、アニメーションが同時に実行されると思われるため、何も起こりません。変数の割り当てとアニメーションの実行の間に遅延を追加する必要がありますか? 他に効率的な方法はありますか?
更新: .parent の css はインラインであり、次のとおりです。
element.style {
background-color: #000000;
border-color: #CCCCCC;
border-radius: 0 0 0 0;
border-style: solid;
border-width: 0;
clear: both;
height: 75px;
overflow: hidden;
padding: 0;
position: relative;
width: 70px;
}