嗨,我认为当我点击表单按钮时它很丑,模态会将用户带到页面的开头。我宁愿它留在用户当前在页面上的位置。这可能吗?
$(".buttons").click(function(){
$("#overlay-modal").fadeIn();
});
$(document).mousedown(function(e){
var clicked = $(e.target);
if (clicked.is('.inner-modal') || clicked.parents().is('.inner-modal')){
return;
} else { $('#overlay-modal').hide();
}
});
});
这就是我现在所拥有的。我试图在我希望页面停留的底部添加一个锚标记,但这不起作用。我也尝试在页面上移动表单的位置。
答案 0 :(得分:4)
点击事件需要返回false,以防止链接将您发送到顶部... #
$(".buttons").click(function(){
// your stuff
return false;
});
答案 1 :(得分:2)
我认为代码中的 e.preventDefault(); 可能比返回false; ...
更有利$(".buttons").click(function(){
$("#overlay-modal").fadeIn();
});
$(document).mousedown(function(e){
var clicked = $(e.target);
if (clicked.is('.inner-modal') || clicked.parents().is('.inner-modal')){
e.preventDefault();
} else { $('#overlay-modal').hide();
}
});
});
这主要与事件冒泡有关,返回false 不会停止。