我正在尝试在我的网站上使用粘性标题,因此当用户向下滚动时导航仍会保留在页面顶部。这里有一些jquery的实现:
if (window_y > scroll_critical) {
if ( !$hContainer.hasClass("header-fixed") ) {
$hContainer.addClass("header-fixed");
if ( search_visible ) {
$('.nav-search-container').removeClass('search-visible');
$('#search').css({'opacity': 0, display: 'none' });
form_search_over = false;
$('.form-search').removeClass('form-search-over');
}
if ( $navWide.length ) {
$navWide.css('margin-left', $('div.logo-container').width());
if ( $navWide.height() > $('.logo-container').height() ) {
$navWide.css('margin-top', -$navWide.height());
$('.logo-container').css('height', $navWide.height());
}
}
}
} else {
if ( $hContainer.hasClass("header-fixed") ) {
$hContainer.removeClass("header-fixed");
if ( search_visible ) {
$('.nav-search-container').addClass('search-visible');
$('#search').css({'opacity': 1, display: 'block' });
form_search_over = false;
$('.form-search').removeClass('form-search-over');
}
if ( $navWide.length ) {
$navWide.css('margin-left', '');
$navWide.css('margin-top', '');
$('.logo-container').css('height', '');
}
}
}
}
它适用于Safari和Firefox,但不适用于Chrome。发生的情况是,当垂直位置满足应用粘性标题的要求时,它只会反弹回顶部并显示 只是正常的标题。是什么让我更困惑的是,它在我检查模式(右键单击检查元素)时按预期工作。我也在不同的页面上进行了测试,我注意到它在一些页面上工作并且在其他页面上不起作用。以上代码是否有任何问题可能导致Chrome上的问题?