0
スクロール中に視覚的に変更された固定アンカーリンクメニューを構成しました。ページをスクロールするだけでなく、アンカーをクリックしてこの変更を行うにはどうすればよいですか?私がスクロールを避け、アンカーリンクを直接使用すると、ビジュアルは変化しません。あなたたちが私を助けてくれることを願っています。スクロールエフェクトをクリックしても動作させる
HTML
<div id="pointer">
<a href="#first"><span class="one"></span></a>
<a href="#second"><span class="two"></span></a>
<a href="#third"><span class="three"></span></a>
<a href="#fourth"><span class="four"></span></a>
<a href="#areaTest"><span class="five"></span></a>
</div>
CSS
body{background-color: #003333;}
#pointer{
position: fixed;
top: 50%;
left: 50px;
}
#pointer span{
display: block;
height: 13px;
width: 25px;
border-top-color: #999999;
border-top-style: solid;
border-top-width: 1px;
}
JS
$(function() {
$(window).on('wheel', function(e) {
var delta = e.originalEvent.deltaY;
var windowScrollTop = $(this).scrollTop();
if (delta > 0) {
//scroll-down
if(windowScrollTop > 0){
$(".one").css("border-top-color","#fff").animate({width: '50px'}, 100);
}
if(windowScrollTop > 350){
$(".two").css("border-top-color","#fff").animate({width: '50px'}, 100);
}
if(windowScrollTop > 750){
$(".three").css("border-top-color","#fff").animate({width: '50px'}, 100);
}
if(windowScrollTop > 1150){
$(".four").css("border-top-color","#fff").animate({width: '50px'}, 100);
}
if(windowScrollTop > 1500){
$(".one, .two, .three, .four, .five").css("border-top-color","#999999");
$(".five").animate({width: '50px'}, 100);
$("body").css('background-color', '#fff');
}
}
else {
//scroll-up
if(windowScrollTop < 350){
$(".two").css("border-top-color","#999999").animate({width: '25px'}, 100);
}
if(windowScrollTop < 750){
$(".three").css("border-top-color","#999999").animate({width: '25px'}, 100);
}
if(windowScrollTop < 1150){
$(".four").css("border-top-color","#999999").animate({width: '25px'}, 100);
}
if(windowScrollTop < 1500){
$(".one, .two, .three, .four, .five").css("border-top-color","#fff");
$(".five").animate({width: '25px'}, 100);
$("body").css('background-color', '#003333');
}
}
});
});
あなた@Andreaをありがとう!それはすごくうまくいっている!私はもしかすることができたら、もう一つ質問したいと思っていました。ユーザーがアンカーリンクをクリックしたときスクロールをスムーズにする方法はありますか? –
スクロールを$( "body")でスムーズにすることができました。アニメーション({scrollTop:$( '#' + targetId).offset()。top-200}、 "slow"); scrollUpのときにbgColorを灰色に変更していません –