我正在创建一个表单,其中我有很多子表单要提交,所以我使用了 jQuery 功能,其中每次提交消息都会显示在页面顶部,现在我想要的是,每次提交时页面都会滚动直到调用 jQuery 的 div。这是我的代码
var url = "<%=addPersonalDetailsURL%>";
var type = "addPersonalDetails";
if(!($('#<portlet:namespace/>address1').val()=='' || $('#country').val()=='None' ||$('#<portlet:namespace/>primaryPhone').val()=='')){
jQuery.getJSON(url+"&address1="+address1+"&address2="+address2+"&country="+country+"&state="+state+"&city="+city+"&zip="+zip+"&skypeId="+skypeId+"&twitter="+twitter+"&primaryPhone="+primaryPhone+"&secondaryPhone="+secondaryPhone+"&type="+type, function(data) {
$('html, body').animate({
scrollTop: $(".success").offset().top
}, 800);
for(var z=0; z<data.applicationArray.length;z++){
applicationArray = data.applicationArray[z].split("$$##$$##");
address1 = applicationArray[0];
address2 = applicationArray[1];
city = applicationArray[2];
primaryPhone = applicationArray[3];
}
jQuery.getJSON 在我必须使用该功能的基础上给出了一些结果。那么你能告诉我应该如何修改你的解决方案吗
最佳答案
您应该需要获取元素在页面中的顶部位置并将滚动条移动到该位置。类似于下面的代码:
jQuery(window).scrollTop(jQuery(".success").offset().top);
请注意,上面的代码将移动到第一个 .success
位置。如果必须引用特定的,请在选择器中添加索引,例如:
jQuery(window).scrollTop(jQuery(".success:eq(1)").offset().top);
关于javascript - 如何每次将页面向上移动到一个div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31374548/