javascript / jquery中的语法错误第29行

时间:2013-03-01 12:17:29

标签: javascript jquery

我刚刚开始学习一些java脚本/ jquery。我的功能可能完全错误,但我甚至无法编译来检查它。 (使用firefox firebug调试器)我已经看过其他类似于我正在尝试编写的代码,并且似乎无法获得这种语法错误,甚至看看它是否会接近。如果有人能帮我解决这个问题,我会非常感激!这是我的代码。

JavaScript文档:

$(document).ready(function () {

    jQuery.fn.timer = function () {
        var $quote = $('#quote').children;
        var i = ('$quote p').css('display', ':visible');
        $quote.eq(i).animate({
            opacity: 0
        }, 300).css('display', ':none');

        if (i > $quote.length) {
            i = 0;
            $quote.eq(i).css('display', ':visible').animate({
                opacity: 100
            }, 300);

        } else {
            $quote.eq(i + 1).css('display', ':visible').animate({
                opacity: 100
            }, 300);
        }


        window.setInterval(function () {
            $('#quote').timer();
        }, 5000);

    });
})(); (edit)

编辑:对不起,“:”是论坛上的一个错字,确实有一个“;”在末尾。我尝试多次更改我的代码在这个区域,但仍然得到相同的语法错误。第29行是我编辑的上一行。

2 个答案:

答案 0 :(得分:2)

var i = ('$quote p').css('display', ':visible');$看起来在('$quote p')部分之前缺少$('#quote p')

修改

那条线肯定应该是;吗?

编辑编辑

此外,正如DCoder在评论中所说,最后一个字符应该是:而不是{{1}}。

答案 1 :(得分:-1)

我认为你缺少括号的问题。请查看以下代码是否可以帮助您

$(document).ready(function () {

jQuery.fn.timer = function () {
    var $quote = $('#quote').children;
    var i = ('$quote p').css('display', ':visible');
    $quote.eq(i).animate({
        opacity: 0
    }, 300).css('display', ':none');

    if (i > $quote.length) {
        i = 0;
        $quote.eq(i).css('display', ':visible').animate({
            opacity: 100
        }, 300);

    } else {
        $quote.eq(i + 1).css('display', ':visible').animate({
            opacity: 100
        }, 300);
    }


    window.setInterval(function () {
        $('#quote').timer();
    }, 5000);

 };

});