コードを投稿していないため、診断が難しいです。
私はあなたの問題を推測しているとはいえここにある:
$(document).ready(function() {
var menu = $('.menu');
// This is likely incorrect on document ready
var origOffsetY = menu.offset().top;
function scroll() {
if ($(window).scrollTop() >= origOffsetY) {
$('.menu').addClass('navbar-fixed-top');
$('.scrolled').addClass('menu-padding');
} else {
$('.menu').removeClass('navbar-fixed-top');
$('.scrolled').removeClass('menu-padding');
}
}
...
}
私はこれについて別の道を進んで示唆しています。おそらく、オフセットを変更することで、それをメニューのコンテナのオフセットに比較しています。これはスクリーンのサイズ変更の問題を回避して、元のオフセット計算も不正確になる原因になります。このようなJSでこの
<div class="menu-container">
<div class="menu">
// Your menu in here
</div>
</div>
ような何か:迅速な対応のための
$(document).ready(function() {
function scroll() {
if ($(window).scrollTop() >= $('.menu-container').offset().top) {
$('.menu').addClass('navbar-fixed-top');
$('.scrolled').addClass('menu-padding');
} else {
$('.menu').removeClass('navbar-fixed-top');
$('.scrolled').removeClass('menu-padding');
}
}
...
}
おかげで、あなたは私のためにこれを固定しているように見えます。私は将来、このコードを私がやっていたものの代わりに使用します。もう一度おねがいします –
@RAstanこれで問題が解決した場合は、正しい回答としてマークしてください。 – Joundill