jQuery显示未找到任何内容的消息

时间:2018-08-17 14:20:43

标签: jquery conditional-statements

我受到jQuery脚本的启发,可以根据所选状态过滤内容(这里是.card类)。

当没有.card可用于某个州时,我想添加一条警报消息(例如:没有可用的地图)。

所以我做了一个应该显示消息的函数。但不幸的是,情况并非如此。

这是该函数的摘录

var cardStateLength = $('.card:visible(.' + myState + ')').length;

        $('.l-flexbox-card').children('.card:not(.' + myState + ')').hide("fast", function() {
            if(cardStateLength === 0) {
                $('.message').addClass('noEvent');
            }
            else {
                $('.message').removeClass('noEvent');
            }
        });

这是整个代码

//Filter by state
$('.has-nav-state-link').click(function() {
    // fetch the id of the clicked item
    var myState = $(this).attr('id');

    //are visible card available?
    var cardStateLength = $('.card:visible(.' + myState + ')').length;

    // reset the active id on all the buttons
    $('.has-nav-state-link').removeAttr('is-all');
    // update the active state on our clicked button
    $(this).attr('is-all');

    if(myState == 'is-all') {
        // show all our items
        $('.l-flexbox-card').children('.card').show("fast");    
    }
    else {
        // hide all elements that don't share .card-FR
        $('.l-flexbox-card').children('.card:not(.' + myState + ')').hide("fast", function() {
            if(cardStateLength === 0) {
                $('.message').addClass('noEvent');
            }
            else {
                $('.message').removeClass('noEvent');
            }
        });
        // show all elements that do share .card-FR
        $('.l-flexbox-card').children('.card.' + myState).show("fast");
    }
    return false;

}); 

有什么主意吗?

谢谢!

0 个答案:

没有答案