Javascript 在ajax成功方法中链接到后面的元素
所以我对我的表单提出了一个ajax请求。它将信息存储在数据库中,然后隐藏表单并显示感谢信息。但是,我需要浏览器来捕捉新的感谢信息 因此,就像在普通页面上一样,您可以执行以下操作:Javascript 在ajax成功方法中链接到后面的元素,javascript,jquery,ajax,Javascript,Jquery,Ajax,所以我对我的表单提出了一个ajax请求。它将信息存储在数据库中,然后隐藏表单并显示感谢信息。但是,我需要浏览器来捕捉新的感谢信息 因此,就像在普通页面上一样,您可以执行以下操作: <a href="www.mywebsite.com/#test"></a> <div id="test"></div> $.ajax({ // ... success: function() { $('html, body').anim
<a href="www.mywebsite.com/#test"></a>
<div id="test"></div>
$.ajax({
// ...
success: function() {
$('html, body').animate({
scrollTop: $("#thankyou").offset().top
}, 0);
}
});
因此,如果单击该链接,它会将您捕捉到图元
如何在ajax成功方法中自动完成此操作?类似这样的方法应该可以做到:
var messagePos = $("#test").offset();
window.scrollTo(0, messagePos.top);
offset()
函数获取元素相对于文档的位置。然后window.scrollTo()
函数移动到文档中指定的x和y位置。在本例中,x是0,y是消息div的顶部。因此,基本上,在成功回调中,您必须有如下内容:
<a href="www.mywebsite.com/#test"></a>
<div id="test"></div>
$.ajax({
// ...
success: function() {
$('html, body').animate({
scrollTop: $("#thankyou").offset().top
}, 0);
}
});
如果你想让它变得平滑,你只需将
0
更改为500
(半秒)。你需要给我更多的东西,因为这是我的工作。发生了什么?什么也没发生,我的javascript在另一个文件中。但实际上什么都没有发生,控制台错误,什么都没有?好你必须向我展示成功函数,因为这样我就无法检查你是否做错了什么。