jQuery错误:SyntaxError:missing:属性id之后

时间:2013-04-10 21:49:04

标签: javascript jquery

我的页面中有一些jQuery不断给出错误:

SyntaxError: missing : after property id

在此代码中。

    $(document).scroll(function(){
        var t1 = $("#main-page").offset().top;
        if($(this).scrollTop() >= t1) {   
        $('#menu-item-70').css({"background-color: #fff"});
        }
    });

Firebug说这是在这一行:$('#menu-item-70').css({"background-color: #fff"});

我似乎无法找到它为什么会出现此错误。

有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:6)

变化:

$('#menu-item-70').css({"background-color: #fff"});

要:

$('#menu-item-70').css({"background-color": "#fff"});

另请注意,滚动事件会多次触发,我建议:

.white-bg { background-color: #fff }
var timeout = '',
    offset = $("#main-page").offset().top,
    $elem = $('#menu-item-70');

$(window).scroll(function(){
    clearTimeout(timeout);
    var top = $(this).scrollTop();
    timeout = setTimout(function(){
       $elem.toggleClass('white-bg', top >= offset);
    }, 100);
});

答案 1 :(得分:1)

您错误地完成了CSS对象:

    $('#menu-item-70').css({"background-color": "#fff"});

答案 2 :(得分:1)

您使用的是css()错误。

尝试更改:

$('#menu-item-70').css({"background-color: #fff"});

要:

$('#menu-item-70').css({"background-color": "#fff"});

所以你的完整代码看起来像这样:

 $(document).scroll(function(){
     var t1 = $("#main-page").offset().top;
     if($(this).scrollTop() >= t1) {   
        $('#menu-item-70').css({"background-color": "#fff"});
     }
 });