ナビゲーションの部分にclass名"current"を追加して、cssで装飾をつけたいと思っています。
メニュー6とメニュー7(cssでflexboxをかけて真横に並んでいるため、TOPからの高さは同じです。)この2つに同時にadclassをつけたいのですが、Jqueryの記述の仕方がどうにもわかりません。。
今の記述だと、メニュー6とメニュー7のどちらにもcurrentがつきません。
補足:一応メニュー1からメニュー5まではcurrentがつくので、そこは動いています。
Htmlの部分
<nav class="menu"> <ul class="menu-inner"> <li id="list01" class="menu-item"><a class="scroll" href="#storeinfo"> メニュー1</a></li> <li id="list02" class="menu-item"><a class="scroll" href="#fourmenu">メニュー2</a></li> <li id="list03" class="menu-item"><a class="scroll" href="#takeout">メニュー3/a></li> <li id="list04" class="menu-item"><a class="scroll" href="#inside-look">メニュー4</a></li> <li id="list05" class="menu-item"><a class="scroll" href="sozai/index.html">メニュー5/a></li> <li id="list06" class="menu-item"><a class="scroll" href="intro/index.html">メニュー6</a></li> <li id="list07" class="menu-item"><a class="scroll" href="media/index.html">メニュー7</a></li> </ul>Jqueryの部分
$(window).on('load resize',function(){
var pos01 = Math.round($("#storeinfo").offset().top - 250);
var pos02 = Math.round($("#fourmenu").offset().top - 250);
var pos03 = Math.round($("#takeout").offset().top - 250);
var pos04 = Math.round($("#inside-look").offset().top) - 250;
var pos05 = Math.round($("#sozai").offset().top - 250);
var pos06 = Math.round($("#intro").offset().top - 250);
var pos07 = Math.round($("#media").offset().top - 250);
$(window).on('load resize scroll',function(){
var posScroll = $(window).scrollTop();
if(pos01 <= posScroll && posScroll < pos02) {
$("#list01").addClass('current').siblings('li').removeClass('current');
} else if(pos02 <= posScroll && posScroll <= pos03) {
$("#list02").addClass('current').siblings('li').removeClass('current');
} else if(pos03 <= posScroll && posScroll <= pos04) {
$("#list03").addClass('current').siblings('li').removeClass('current');
} else if(pos04 <= posScroll && posScroll <= pos05) {
$("#list04").addClass('current').siblings('li').removeClass('current');
} else if(pos05 <= posScroll && posScroll <= pos06) {
$("#list05").addClass('current').siblings('li').removeClass('current');
} else if(pos06 <= posScroll) {
$('#list06#list07').addClass('current').siblings('li').removeClass('current');
} else if(pos07 < posScroll) {
$('#list06#list07').removeClass('current').siblings('li').removeClass('current');
}
});
});
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/16 00:22
2021/02/16 01:27