使用它来获取点击次数:
$("nav li a").click(function(event) {
event.preventDefault();
target = $(this).attr("href").replace('#', '');
goToByScroll(target);
});
这是滚动功能:
function goToByScroll(id) {
$('html, body').animate({
scrollTop: $("#"+id).offset().top - totalHeight
}, 'slow');
}
第一次点击有效,但之后链接不可点击/激活,除非手动滚动页面。有什么想法吗?
最佳答案
在与 iOS 人员的进一步调查中,我们发现这是 iOS5 上的 Safari 中的一个错误。
我试过了;
// $('html,body').animate({ scrollTop: scrollto + 'px' }, 'slow')
window.scroll(0,0);
并且看到它实际上将固定标题绘制在屏幕下方。随着点击工作。
所以我换回了代码,虽然它在顶部正确地绘制了标题,但事件点击区域仍然在页面的更下方,虽然不可见,但可以点击。
他们似乎已经解决了在 iOS6 上的测试。
我用尽了各种 CSS 和 DOM 操作、删除并重新插入新的标题区域……没有任何效果。
所以我有 99% 的把握发布这个答案。哈哈。虽然我知道这对你没有帮助。
关于jquery - 在 iOS Safari 上滚动后 anchor 失去点击能力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9378527/