jQuery if/else意外标记:打孔({)

jQuery if/else意外标记:打孔({),jquery,syntax-error,gruntjs,Jquery,Syntax Error,Gruntjs,我有一个小小的if查询。它必须有点像媒体查询。在某种程度上,它可以工作,但Grunt打印出一个错误,称为: 意外标记:punc{ 以下是我的jQuery代码片段: $(document).ready(function () { if ($(window).resize(function () { if ($(window).width() < 800) { $('.bxslider').bxSlider({ m

我有一个小小的if查询。它必须有点像媒体查询。在某种程度上,它可以工作,但Grunt打印出一个错误,称为:

意外标记:punc{

以下是我的jQuery代码片段:

$(document).ready(function () {
    if ($(window).resize(function () {
        if ($(window).width() < 800) {
            $('.bxslider').bxSlider({
                minSlides: 2,
                maxSlides: 2,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function () {
                    showSlider();
                }
            });
        }
        if ($(window).width() < 480) {
            $('.bxslider').bxSlider({
                minSlides: 1,
                maxSlides: 1,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function () {
                    showSlider();
                }
            });
        }
    }))
    else {
        $('.bxslider').bxSlider({
            minSlides: 3,
            maxSlides: 3,
            moveSlides: 1,
            pager: false,
            randomStart: true,
            auto: true,
            autoHover: true,
            controls: true,
            onSliderLoad: function () {
                showSlider();
            }
        });
    }
});

在您最后的else语句上面的一行,尝试删除}。我很难测试,但在我的编辑器中,这些看起来与任何内容都不匹配,只是额外的。但是可能是错误的,值得一试,因为我相信您收到的是语法错误的等价性

最后还缺少一个括号。我相信下面的代码在语法上应该是正确的,但是可能需要根据您希望如何遍历条件进行一些更改,即,我不清楚else是否属于哪个

    $(document).ready(function(){
        if($(window).resize(function(){
            if($(window).width() < 800){
                $('.bxslider').bxSlider({
                    minSlides: 2,
                    maxSlides: 2,
                    moveSlides: 1,
                    pager: false,
                    randomStart: true,
                    auto: true,
                    autoHover: true,
                    controls: true,
                    onSliderLoad: function() {
                        showSlider();
                    }
                });
            }
            if($(window).width() < 480){
                $('.bxslider').bxSlider({
                    minSlides: 1,
                    maxSlides: 1,
                    moveSlides: 1,
                    pager: false,
                    randomStart: true,
                    auto: true,
                    autoHover: true,
                    controls: true,
                    onSliderLoad: function(){
                        showSlider();
                    }
                });
            }
        else {
            $('.bxslider').bxSlider({
                minSlides: 3,
                maxSlides: 3,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function(){
                    showSlider();
                }
            });
        }
    }});

鉴于您提供的信息数量有限,很难说,但我很确定这正是您真正想要做的

$(document).ready(function(){
    $(window).resize(function(){
        if($(window).width() < 480){
            $('.bxslider').bxSlider({
                minSlides: 1,
                maxSlides: 1,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function(){
                    showSlider();
                }
            });
        }
        else if($(window).width() < 800){
            $('.bxslider').bxSlider({
                minSlides: 2,
                maxSlides: 2,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function() {
                    showSlider();
                }
            });
        }
        else {
            $('.bxslider').bxSlider({
                minSlides: 3,
                maxSlides: 3,
                moveSlides: 1,
                pager: false,
                randomStart: true,
                auto: true,
                autoHover: true,
                controls: true,
                onSliderLoad: function(){
                showSlider();
                }
            });
        }
    });
});

切题地说,jQuery不能在if语句中使用,因为它不返回布尔值。相反,使用它来创建一个调整大小的侦听器。第一个if的目的是什么?我的猜测是,您不需要/不想要它,并且您的最后一个else块实际上应该与其他两个if块处于同一级别。这实际上没有打印出来找出任何好的错误。谢谢,但我的想法中有一些问题。@RunEpier我可以帮助修复您的代码,但我无法帮助修复您的想法: