我目前有一个覆盖默认鼠标滚轮行为的函数:
$(function() {
$('body').mousewheel(function(event, delta) {
if (flag) { return false; }
$current = $('div.current');
console.log(delta);
console.log($current);
if (delta > 0) {
$prev = $current.prev();
if ($prev.length) {
flag = true;
$('body').scrollTo($prev, 750, {
onAfter : function(){
flag = false;
}
});
$current.removeClass('current');
$prev.addClass('current');
}
} else {
$next = $current.next();
if ($next.length) {
flag = true;
$('body').scrollTo($next, 750, {
onAfter : function(){
flag = false;
}
});
$current.removeClass('current');
$next.addClass('current');
}
}
event.preventDefault();
});
});
我使用此功能来跟踪我的“页面”:
window.setInterval(function(){
var sliderObject = $.data( $('#slider-main')[0], 'liquidSlider');
if (sliderObject.currentTab == 0) {
home = true;
}
else{
home = false;
}
}, 500);
我想要的:如果home
设置为true
换句话说,我只想在home
为真时绑定特殊的鼠标滚轮功能。
我该怎么做?
提前致谢。
答案 0 :(得分:2)
我要做的是,在鼠标滚轮事件$.mousewheel
(我不知道jQuery支持的方式)的监听器内,有一个if
语句确定home
是否设置为true并对其采取行动。
在这种情况下:
$('body').mousewheel(function (event, delta) {
if (home === true) {
// Special behavior
} else {
// Default behavior
}
});