在jQuery中,我有一些变量会在滚动时更新。
var scrollTop = $(window).scrollTop();
var width = site.logoWidth - scrollTop;
var logoPadding = scrollTop;
我想停止 logoPadding
变量时,不更新 width
变量为0,然后如果 width
再次超过0。我目前已经得到了这个,但我不知道如何停止的 logoPadding
变量的变化。
if (width < 0) {
var width = 0;
var logoPadding = ;
}
完整代码
$(window).scroll(function() {
var windowHeight = $(window).height();
var logoWidth = $('#main-logo').width();
var scrollTop = $(window).scrollTop();
var width = site.logoWidth - scrollTop;
var logoPadding = scrollTop;
if (width < 0) {
var width = 0;
var logoPadding = ;
}
if (scrollTop < site.windowHeight + 10) {
$('#main-logo').css({
'width' : width,
'padding-bottom' : logoPadding
})
}
});
if (width < 0) {
var width = 0;
var logoPadding = ;
}
应该是
if (width <= 0) {
width = 0;
logoPadding = 0;
return;
}
可能
首先声明&;在滚动函数之前初始化logoPadding。
var logoPadding=0
然后:
$(window).scroll(function() {
var windowHeight = $(window).height();
var logoWidth = $('#main-logo').width();
var scrollTop = $(window).scrollTop();
var width = site.logoWidth - scrollTop;
if (width < 0) {
var width = 0;
//if width is zero, don't update logoPadding
}
else{
logoPadding = scrollTop; //update logoPadding
}
if (scrollTop < site.windowHeight + 10) {
$('#main-logo').css({
'width' : width,
'padding-bottom' : logoPadding
})
}
});