我有以下代码使顶部导航栏消失,我要问的问题是我将如何让它只在 680 像素以下的宽度下工作?除此之外,它工作得很好。
var mywindow = $(window);
var mypos = mywindow.scrollTop();
var up = false;
var newscroll;
mywindow.scroll(function () {
newscroll = mywindow.scrollTop();
if (newscroll > mypos && !up) {
$('header').fadeOut();
up = !up;
console.log(up);
} else if(newscroll < mypos && up) {
$('header').fadeIn();
up = !up;
}
mypos = newscroll;
});
已修复。大多。当通过调整窗口大小传递宽度时,脚本仍将停止/开始工作。不知道如何阻止它。
//移除低宽度页面上的导航栏
function toggleBar(){
var mywindow = $(window);
var mypos = mywindow.scrollTop();
var up = false;
var newscroll;
mywindow.scroll(function () {
newscroll = mywindow.scrollTop();
if (newscroll > mypos && !up) {
$('header').stop().fadeOut();
up = !up;
console.log(up);
} else if(newscroll < mypos && up) {
$('header').stop().fadeIn();
up = !up;
}
mypos = newscroll;
});
}
//REMOVE NAVBAR (place this in document load)
$(window).load(function() {
var pageWidth = $(window).width();
if (pageWidth < 640){
toggleBar();
$('header').attr('href','../../../css/main.css');
}
});
最佳答案
var windowsize = $window.width();
if (windowsize < 680 ) {
var mypos = mywindow.scrollTop();
var up = false;
var newscroll;
mywindow.scroll(function () {
newscroll = mywindow.scrollTop();
if (newscroll > mypos && !up) {
$('header').fadeOut();
up = !up;
console.log(up);
} else if(newscroll < mypos && up) {
$('header').fadeIn();
up = !up;
}
mypos = newscroll;
});
}
关于jquery - 使以下代码适用于响应功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29408126/