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

这段js代码我不明白,麻烦每一个给我备注下啥意思,在每一行下备注注释,求详细撸谢谢

<h2>自定义事件trigger</h2>
    <div class="left">
        <div><span></span><span>0</span>点击次数</div>
        <button>直接点击</button>
        <button>通过自定义点击</button>
    </div>
    <script type="text/javascript">

    //点击更新次数
    $("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);
    }

提问者:慕仙5237505 2017-11-10 16:00

个回答

  • Y先生的可乐
    2018-11-15 19:25:37


        <script type="text/javascript">

        //点击更新次数
        $("button:first").click(function(event,bottonName) {   //给第一个按钮绑定一个click事件
            bottonName = bottonName || 'first';            //如果bottonName未定义就用参数first
            update($("span:first"),$("span:last"),bottonName);  //引用update函数
        });

        //通过自定义事件调用,更新次数
        $("button:last").click(function() {    //给第二个按钮绑定click事件
            $("button:first").trigger('click','last');   //触发第一个按钮所绑定的click事件,并传递参数last
        });

        function update(first,last,bottonName) {  //自定义函数update
            first.text(bottonName);        //输出文本bottonName参数的值(first或者last)
            var n = parseInt(last.text(), 10);    // 用n记录点击次数
            last.text(n + 1);    //输出点击次数
        }
        </script>

  • 慕娘0235771
    2018-03-04 16:39:05

    着重说一下  “var n = parseInt(last.text(), 10);”这一句,  我先摘抄一下W3School的内容:“parseInt() 函数可解析一个字符串,并返回一个整数。”他的作用就是解析出字符串中第一个出现的数字,第一个参数就是要求解析的字符串,第二个参数是对第一个参数的补充,是数字几就代表第一个参数中的数字是什么进制。例如:parseInt("11",2); //返回 3 (2+1)  就是说  把“11”当做二进制看然后解析为十进制数字“3”.

  • qq_情迷二次元_0
    2017-11-11 11:02:13

    bottonName是事件的参数,因为有两个按钮,一个是first参数一个是last参数,bottonName用来储存这两个参数

  • qq_情迷二次元_0
    2017-11-11 01:17:11

        <script type="text/javascript">

        //点击更新次数
        $("button:first").click(function(event,bottonName) {   //给第一个按钮绑定一个click事件
            bottonName = bottonName || 'first';            //如果bottonName未定义就用参数first
            update($("span:first"),$("span:last"),bottonName);  //引用update函数
        });

        //通过自定义事件调用,更新次数
        $("button:last").click(function() {    //给第二个按钮绑定click事件
            $("button:first").trigger('click','last');   //触发第一个按钮所绑定的click事件,并传递参数last
        });

        function update(first,last,bottonName) {  //自定义函数update
            first.text(bottonName);        //输出文本bottonName参数的值(first或者last)
            var n = parseInt(last.text(), 10);    // 用n记录点击次数
            last.text(n + 1);    //输出点击次数
        }
        </script>


    刚学完,仅供参考