jQueryアコーディオンスタイルのメニューを作成しようとしていますが、ほとんど機能していますが、ページの読み込み時にデフォルトでサブメニューが表示される理由を解明しようとして何時間も立ち往生しています。
CSSを使用してそれらを非表示にしようとしましたが、何らかの理由でスライドダウンしません。また、jQuery でそれらを非表示にしようとしましたが、同じ問題があります。
私は明らかにどこかで間違っていましたが、どこで解決できません。
HTML と CSS 用の JSFiddle を作成しました: http://jsfiddle.net/rcord/Gd7DM/7/
私のjQueryは次のとおりです。
$(document).ready(function () {
$('#mobnav > ul > li > a').click(function () {
$('#mobnav li').removeClass('active');
$(this).closest('li').addClass('active');
var checkElement = $(this).next();
if ((checkElement.is('ul')) && (checkElement.is(':visible'))) {
$(this).closest('li').removeClass('active');
checkElement.slideToggle('normal');
}
if ((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#mobnav ul ul:visible').slideToggle('normal');
checkElement.slideToggle('normal');
}
if ($(this).closest('li').find('ul').children().length === 0) {
return true;
} else {
return false;
}
});
});
ありがとうございました!
編集:答えてくれた2人に感謝します-それは完全に機能します。私はstackoverflowを初めて使用し、コメントを使用しないように指示されているため、どこに感謝を言うべきかわかりません...