所以我有这个功能,以防止侧边栏悬停时身体滚动。 问题是,我无法使mouseout功能正常工作。
var currentScroll=0;
function lockscroll(){
$(window).scrollTop(currentScroll);
}
$(document).ready(function (){
$(".sidebarholder, .commentswrapper").hover(function (){
currentScroll=$(window).scrollTop();
$(window).bind('scroll',lockscroll);
})
})
我的问题是,如何在鼠标移开时取消绑定?
如果我这样做,它就会完全停止工作。
$(".sidebarholder, .commentswrapper").mouseout(function(){
currentScroll=$(window).scrollTop();
$(window).unbind('scroll');
})
答案 0 :(得分:3)
jQuery的hover()
已内置“悬停”,这可能会有所帮助:
$(".sidebarholder, .commentswrapper").hover(
function (){ // hover over
currentScroll=$(window).scrollTop();
$(window).bind('scroll',lockscroll);
},
function (){ // hover off
currentScroll=$(window).scrollTop();
$(window).unbind('scroll',lockscroll);
}
)
答案 1 :(得分:0)
你试过吗
$(document).ready(function () {
$(".sidebarholder, .commentswrapper").hover(function () {
currentScroll = $(window).scrollTop();
$(window).bind('scroll', lockscroll);
}, function () {
currentScroll = $(window).scrollTop();
$(window).unbind('scroll');
})
})