【问题标题】:Increment Badge Count增加徽章计数
【发布时间】:2011-06-08 04:45:38
【问题描述】:
jQuery.fn.add = function() {

    var Bnumber = $(this).find(".B_Add");

    if (Bnumber) {
        Bcount = parseInt(Bnumber.html()) + 1;
        $(this).find("div.B_Add").remove();
        $(this).parent().find(".B_List").append('<div class="Badge B_Add">'+ Bcount +'</div>');

    } else {
        $(this).find(".B_List").append('<div class="Badge B_Add">1</div>');
    }
}

我有一个上下文菜单脚本正在运行,当我单击其中一个选项时,它会调用此函数。它应该查看活动元素是否具有此徽章。如果是,它会增加徽章的整数值。否则,它会从 1 开始创建徽章。后半部分容易,前半部分更难。

我想我混淆了元素类型,我不确定如何使用 parseInt...

编辑

想通了。

jQuery.fn.add = function() {
    if ($(this).find(".Badge").hasClass(".B_add")) {
        bCount = parseInt($(this).find(".B_add").text());
        $(this).find(".B_add").remove();
        $(".OPT .B_list").append('<div class="Badge B_add">'+(bCount+1)+'</div>');
    } else {
        $(".OPT .B_list").append('<div class="Badge B_add">0</div>');
    }
}

【问题讨论】:

    标签: jquery function counter parseint


    【解决方案1】:

    试试这个。

    jQuery.fn.add = function() {
    
        var Bnumber = $(".B_Add");
    
        if (Bnumber) {
            var Bcount = parseInt(Bnumber.html()) + 1;
            Bnumber.html(Bcount);
        } else {
            $(this).find(".B_List").append('<div class="Badge B_Add">1</div>');
        }
    }
    

    【讨论】:

      【解决方案2】:

      试试

      Bcount = parseInt(Bnumber.text()) + 1;
      

      【讨论】:

        【解决方案3】:

        这是我的看法:

        jQuery.fn.add = function() {
            var badge = $('.B_Add', this);
        
            if (badge.length) {
                badge.html(Number(badge.html()) + 1);
            } else {
                $('.B_List', this).append('<div class="Badge B_Add">1</div>');
            }
        }
        
        1. 对我来说,将 $('.B_Add', this) 格式用于其他内容中的内容似乎是最简洁的语法。
        2. 您必须检查badge.length 以查看是否找到了一个项目 - 即使 jQuery 选择器没有匹配任何项目,它仍然评估为 true
        3. 无需重新创建 B_Add 元素,更改其内容应该可以完成同样的事情。
        4. 我一生中从未使用过parseIntNumber 似乎也做了同样的事情,而且看起来更漂亮。

        【讨论】:

          猜你喜欢
          • 2013-09-29
          • 1970-01-01
          • 1970-01-01
          • 2018-01-01
          • 2019-01-08
          • 1970-01-01
          • 1970-01-01
          • 2012-06-24
          • 2019-08-24
          相关资源
          最近更新 更多