【发布时间】:2011-01-04 17:47:24
【问题描述】:
大家好, 我正在使用 ajax 从子站点加载 div。这个子网站有一个这样的链接:
<a href="#someIDonHomepage">anchorlink</a>
我的 ajax 请求被触发的主页有这个#someIDonHomepage div,我希望我的页面跳转到那个位置。
但是,由于我使用 ajax 加载锚点,这不起作用。
知道如何解决这个问题吗?
我用 jquery 编写了这个动画滚动脚本,它在单击锚点时动画跳转。
/*Animated scroll for anchorlinks*/
var anchor = '',
pageOffset = '',
viewOffset = 30,
scrollPos = '';
$(function() {
$("a[href*='#']").each(function() {
$(this).addClass('anchorLink');
$(this).bind('click', function(e) {
e.preventDefault();
anchor = $(this).attr('href').split('#')[1];
pageOffset = $("a[name='#"+anchor+"']").offset();
scrollPos = pageOffset.top - viewOffset;
$('html, body').animate({scrollTop:scrollPos}, '500');
})
});
});
知道我该如何解决吗?谢谢
【问题讨论】:
-
"但是,由于我正在使用 ajax 加载锚,这不起作用。"你是如何用 ajax 加载你的锚的?
-
我只是用 jquery load() 方法加载一个带有一些文本的 div 和锚链接。
标签: jquery ajax scroll fragment-identifier hashchange