2012-05-03 5 views

答えて

2

私は何が起こったのか説明しましょう。最後に作成されたdivだけを選択していたので、そのdivだけが表示されていました。

私が選択した.activeを見つけなければならなかったし、ここで選択したdiv

は例です:私はactiveanimation VARS

active = $(this).parent().find('.active'); 
    animation = $(this).parent().find('div'); 
を変更するには先頭にこれを追加 mouseover

http://jsfiddle.net/JoshuaPack/YFUsJ/23/

mouseoutこれを追加しました。

active = $(this).find('.active'); 
    animation = $(this).find('div'); 

EDIT:は、他の<li>のオブジェクトにクラスactiveを移動すると、問題のために は、あなたがここで個別.activeクラスの を<div>を追加する必要がある例です。

http://jsfiddle.net/JoshuaPack/YFUsJ/31/

私がしたことは、アニメーションのバリエーションを.each

$.each(active, function() { 
    var animation = $('<div>').css({ 
     'position': 'absolute', 
     'height': $(this).outerHeight()-1, 
     'width': $(this).outerWidth(), 
     'marginTop': ($(this).parent().index() * $(this).outerHeight()), 
     'borderBottom': '1px solid #000', 
     'z-index': -10 
    }); 
    $(this).parent().parent().prepend(animation); 
}); 
代わり

または前のような<ul>に前置し、私はいつもクラスactiveでメニューのためにあるはずの親の親にそれをやりました。

+0

ありがとうございましたJoshua!アクティブなクラスを別のアンカーに移動すると、正しく動作しないので、あなたは近づいています。もう一度見てもらえますか?ありがとうございました! – Jonathan

+0

http://jsfiddle.net/JoshuaPack/YFUsJ/31/ –

+0

スマートムーブ!これはThnxです。 – Jonathan