尝试使用按钮转到锚点。
我的JS代码是:
function scrollToAnchor(aid){
var aTag = $("a[name='"+ aid +"']");
$('html,body').animate({scrollTop: aTag.offset().top},'slow');
}
$("#AsGuest").click(function() {
scrollToAnchor('FName_Ship');
});
HTML按钮我用作点击:
<input type="Submit" id="AsGuest" class="btn btn-orange" value="CONTINUE AS A GUEST" style="margin-top:5px;"/>
区域我将点击:
<input type="text" id="FName_Ship" name="FName_Ship" value="James" onchange="$.ajax( { type: 'GET', dataType: 'json', url: 'dmiajaxsecure.aspx?request=updatedata&fieldname=shipfname&fieldvalue=' + this.value + '&extra=' + rnd() } );" class="valid">
答案 0 :(得分:4)
jQuery.offset()
返回null
。在尝试调用aTag.length
方法之前检查.offset()
,很可能锚点不存在。
答案 1 :(得分:1)
将a
标记替换为input
,因为它是您实际定位的元素。
function scrollToAnchor(aid){
var inputTag = $("input[name='"+ aid +"']");
$('html,body').animate({scrollTop: inputTag.offset().top},'slow');
}
$("#AsGuest").click(function() {
scrollToAnchor('FName_Ship');
});