我使用javascript覆盖我的侧面菜单点击滑动到div而不是直接转到它。我的脚本在chrome上工作得很好,但它在Firefox或IE上不起作用。任何人都可以告诉我如何修复我的脚本,以便它适用于IE和FF?
这是我的代码:
$('#sidebar a').each(function(){
var href = $(this).attr('href');
console.log(href+" @!#");
$(this).click(function () {
event.preventDefault();
$('html, body').animate({
scrollTop: $(href).offset().top
}, 1000);
});
});
</script>
答案 0 :(得分:0)
我会完全不同,也许你的代码在event.preventDefault()上失败了。我总是对回调中传递的事件对象执行preventDefault。
$('#sidebar').on('click', 'a', function(e){
e.preventDefault();
$('html, body').animate({
scrollTop: $($(e.target).attr('href')).offset().top
}, 1000);
});