问答详情
源自:7-1 jQuery自定义事件之trigger事件

jQuery自定义事件之trigger事件这一篇有人可以帮忙解释下吗

 //点击更新次数
    $("button:first").click(function(event,bottonName) {
        bottonName = bottonName || 'first';
        update($("span:first"),$("span:last"),bottonName);
    });

    //通过自定义事件调用,更新次数
    $("button:last").click(function() {
        $("button:first").trigger('click','last');
    });

    function update(first,last,bottonName) {
        first.text(bottonName);
        var n = parseInt(last.text(), 10);
        last.text(n + 1);
    }


提问者:夜雨星缘 2017-04-21 15:47

个回答

  • 飞翔的兔斯基
    2017-07-19 17:35:59

    $("button:first").click(function(e){

            var n = parseInt($("span:last").text());

            $("span:last").text(n + 1);

        });

        $("button:last").click(function(){

            $("button:first").trigger('click');

        });

    第一个按钮绑定了,单击事件

    单击第二个 按钮 时 调用 第一个的单击事件(trigger就是用来调用某个节点的某个事件)

  • 懒惰的猫想吃鱼
    2017-06-21 16:45:33

    还是晕乎乎的!

  • 江锦宏
    2017-04-21 16:44:16

    引用“学徒王小明"的回答:

    当点击第一个 button 时,会触发第一个按钮的 click事件,function 参数中的 bottonName,此时还未定义(undefined),所以在执行"或"语句时,将 'first'这个字符串赋给bottonName,继续执行 update()函数。第一个参数为第一个 span对象,第二个参数为第二个 span对象,第三个参数的内容此时为 'first'。在update函数中,将第一个span的文本设置为 'first',将第二个span的文本转换为整型,基数为10,计数器n自加 1,并赋给第二个 span的文本

    点击第二个 button的过程以此类推。