我的锚标记从单独的页面到指定页面有问题,然后加载然后碰到页面底部。有没有解决这个问题?请参阅链接以获取完整代码
的jQuery
<script>
jQuery(document).ready(function() {
var allPanels = jQuery('.accordion > dd').hide();
jQuery('.accordion > dt > a').click(function( e ) {
e.preventDefault(); // don't use return false;
allPanels.slideUp('normal');
jQuery(this).parent().next().slideDown('normal');
});
jQuery(location.hash).show();
});
</script>
答案 0 :(得分:1)
假设目标页面是您的,请尝试更改此
<dt>
<a name="#reviewpoints">Writing Product Reviews</a>...
</dt>
到这个
<dt id="reviewpoints">
<a href="#">Writing Product Reviews</a>...
</dt>
已知命名锚点会导致位置问题,而在HTML5中,无论如何锚点都没有name
属性。此外,href
属性是必需的。
此外,您似乎在页面上遇到了jQuery问题:
未捕获的TypeError:$(...)。ready不是函数
这通常意味着jQuery不可用或者您与其他库存在别名冲突。
更新:您似乎在该页面中加载了至少3个版本的jQuery。他们处理得当吗?
答案 1 :(得分:0)
尝试使用 slideToggle :
$(function() {
var allPanels = $('.accordion>dd');
allPanels.hide();
$('.accordion>dt>a').on('click',function(e) {
e.preventDefault();
el=$(this).parent().next();
allPanels.not(el).slideUp();
el.slideToggle();
});
$(location.hash).show();
});