slideDown メニューのリンクに問題があります。
リンクをクリックできないのはなぜですか?
ここで確認できます: JSFiddle
私のjQueryコードは次のとおりです。
$('.links').hide();
$('.header a').click(function(e) {
$(this).next('.links').slideToggle('normal');
e.preventDefault();
});
それを削除e.preventDefault()すると、デフォルトのアクションが妨げられますclick()
$('.header a').click(function(e) {
$(this).next('.links').slideToggle('normal');
//e.preventDefault();
});
セレクター.header aは、不要な 内に含まれるすべてのアンカーに影響し.headerます。toggle()の直接の子であるアンカー.headerがクリックされた場合にのみ必要です。
$('.header > a').click(function(e) {
e.preventDefault();
$(this).next('.links').slideToggle('normal');
});
これを使用e.preventDefault();すると、発生するデフォルトのアクションが停止します。つまり、HREF はページを新しい場所に移動します。リンクを削除するe.preventDefault()と、リンクは再び「アクティブ」になります。
更新されたコード
$('.header a').click(function(e) {
$(this).next('.links').slideToggle('normal');
});
jQuery ドキュメントから: http://api.jquery.com/event.preventDefault/
e.preventDefault()- このメソッドが呼び出された場合、イベントのデフォルト アクションはトリガーされません。たとえば、アンカーをクリックしても、ブラウザーは新しい URL に移動しません。