而不是窗口跳转使锚点位于页面顶部,我希望它比页面顶部低100px。我不想动画,我宁愿它没有跳过两次。
我希望它是一般解决方案。
这是我尝试的但它似乎不起作用......
$("a.inpage").click(function (e) {
e.preventDefault();
$(":target").each(function () {
var targetpos = $(this).position();
var scrollpos = targetpos.top - 100;
window.scrollTo(0,scrollpos);
})
}
谢谢, 大卫
答案 0 :(得分:0)
:目标CSS3选择器匹配哪个id是URL的一部分。但是您正在使用ev.preventDefault(),因此您不会关注该链接并且URL不会更改
最好像做
一样$("a.inpage").click(function (e) {
e.preventDefault();
var targetpos = $($(this).attr('href')).position(); // note this line
var scrollpos = targetpos.top - 100;
window.scrollTo(0,scrollpos);
}