我希望这只能工作一次。目前,我的滚动顶部始终有效,因此无法向下滚动页面。
$(function() {
$(".showhover").hover(
function() {
$('div.mouseover').show(),
$("html, body").animate({scrollTop: $('div.mouseover').innerHeight() });
});
});
答案 0 :(得分:3)
您可以使用one()
,但hover()
是jQuery打包mouseenter和mouseleave中的自定义函数,而one('hover')
会附加到hover
事件,即不推荐。
使用mouseenter / mouseleave时,您必须自行恢复功能:
$(function() {
$(".showhover").one({
mouseenter: function() {
$('div.mouseover').show(),
$("html, body").animate({scrollTop: $('div.mouseover').innerHeight() });
},
mouseleave: function() {
$('div.mouseover').hide(),
}
});
});
答案 1 :(得分:0)
尝试one('mouseenter mouseleave'
,hover是mouseenter和mouseleave组合的伪事件。
$(".showhover").one('mouseenter mouseleave', function(e) {
$('div.mouseover').toggle();
if(e.type === 'mouseenter')
$("html, body").animate({scrollTop: $('div.mouseover').innerHeight() });
});