0
ウィンドウが一定のポイントを超えてスクロールするたびにnavbar divを固定する単純なjQuery関数を作成しようとしています。 このdivをスクロールしてNavbarを修正する必要があるたびに、この点をヘッダーdivの高さとして設定しました。 ウィンドウのスクロールバーをクリックしてドラッグし、divが固定される場所を右に置いた場合を除き、上下にジッタがかかります。これを引き起こす原因は何ですか?スクロール後のdivの修正スクロールバージッタの作成
これは私のHTMLコードです:
<!DOCTYPE html>
<html>
<head>
<link rel='stylesheet' type='text/css' href='css/styles.css'>
<script src='js/jquery.js'></script>
<script src='js/main.js'></script>
</head>
<body>
<div class='header'></div>
<div class='navbar'></div>
<div class='about'></div>
</body>
</html>
は、これは私のCSSコードです: 体 { マージン:0; }
.header
{
margin: 0;
height: 100vh;
background-color: yellow;
}
.navbar
{
margin: 0;
height: 10vh;
width: 100%;
background-color: pink;
}
.about
{
margin: 0;
height: 200vh;
background-color: red;
}
そして、これは私のjQueryのコードです:あなたの助けのための
$(window).scroll(function(e){
if ($(this).scrollTop() >= $('.header').height() && $('.navbar').css('position') != 'fixed')
{
$('.navbar').css('background-color', 'blue');
$('.navbar').css({
'position': 'fixed',
'top': '0'
});
}
else if ($(this).scrollTop() < $('.header').height() && $('.navbar').css('position') != 'relative')
{
$('.navbar').css('background-color', 'pink');
$('.navbar').css({
'position': 'relative'
})
}
})
ありがとう!ここ
感謝です。私は自分自身のコードをこのコードと比較しました。私自身のコードがどこに間違っているのか分かりません。アイデアはありますか? –
私は親愛なることを確認させてください – Muzamil301