###【jQuery】下記ソースが読める方解説お願いします。
こちらのスマホサイト(http://www.nico-dental.com/sp/)
の右上のボタン(ドロワーメニュー)の処理は下記で行っています。
ソースコードの概ねは理解できるのですが、for文の部分が何の働きをしているのかが、
いまいちわかりません。そもそもこちらは必要なのでしょうか?
ご存知の方いらっしゃいましたら解説お願いします。
###不明なコード
for (var i = 1; i <= menuItem.length; i++) { menuItem.eq(i - 1).stop().animate({ 'center': openPosition }, speedItem); }
###メニュー表示/非表示のコード
function menuSlide(b, t, h) { var btn_menu = b, header = $(h), menu = $(btn_menu), speedOpen = 400, speedClose = 600, speedItem = 300, speedDelayOpen = 300, speedDelayClose = 100, open = 'menu_open', close = 'current', openPosition = 0, closePosition = 0, //0 ~ -100% targetId = t, target = $(targetId), menuItem = target.find('li'); menu.on('click', function() { if (!menu.hasClass(close)) { target.stop().fadeIn(speedOpen); menu.removeClass(open).addClass(close); header.removeClass(close).addClass(close); for (var i = 1; i <= menuItem.length; i++) { menuItem.eq(i - 1).stop().animate({ 'center': openPosition }, speedItem); } } else { for (var i = 1; i <= menuItem.length; i++) { //console.log(-(i - 1)); menuItem.eq(-i).stop().animate({ 'center': closePosition }, speedItem); } target.stop().fadeOut(speedClose); menu.removeClass(close).addClass(open); header.removeClass(close); } }); } menuSlide('.js_btn_gnavi', '#gNaviWrap', '#headerWrap');
以上です。
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー