Javascript函数停止其他功能工作

时间:2014-05-12 08:32:11

标签: javascript jquery

这是我的代码:http://jsfiddle.net/KCb5z/

我认为代码的问题在这里:

$(".nav").click(function (e) {
    e.preventDefault();
    var divId = $(this).attr('href');
    $('html, body').animate({
        scrollTop: $(divId).offset().top;
    }, 500);}
});

我认为我的包围有问题,因为它似乎没有正确滚动甚至允许持久标头保持持久性。谁有人能告诉我哪里出错了?

2 个答案:

答案 0 :(得分:1)

您可以从浏览器控制台中看到错误:

Uncaught SyntaxError: Unexpected token ;

原因是因为您设置了;值后scrollTop,您只需将其删除就可以了:

scrollTop: $(divId).offset().top;
// ---                          ^ remove this

<强> Updated Fiddle

答案 1 :(得分:1)

除了.top之外的虚假分号

$('html, body').animate({scrollTop: $(divId).offset().top}, 500);

你可能希望将整个内容事物包装在一个高度为div的div中并使用overflow:auto来保存菜单

http://jsfiddle.net/mplungjan/7cZG7/

同时将小提琴改为头部而不是onload