這節很難懂,我把自己的理解注釋一下
<script type="text/javascript">
? ? ? ? function update(first, jishu, biaoti) {//一個叫update的自定義函數,有三個參數,第一個參數是那句話的抬頭,第二個參數是點擊了多少次,第三個參數決定抬頭顯示什么
? ? ? ? ? ? first.text(biaoti);//抬頭的文本內容為第三個參數
? ? ? ? ? ? var n = parseInt(jishu.text(), 10);//一個n的變量,從第二個參數獲取文本內容,,然后按10進制轉化為數字
? ? ? ? ? ? jishu.text(n + 1);//計數器的文本值增加1
? ? ? ? }
? ? ? ? //點擊更新次數
? ? ? ? $("button:first").click(function(ev, bo) {//給第一個按鈕監聽鼠標單擊事件,然后執行一個函數,函數有兩個參數,ev是觸發事件的對象,bo是一個自定義參數
? ? ? ? ? ? bo = bo || 'first';//這句話意思是,如果有給bo,那就用bo的值,沒有的話,bo就用first當值,在這里沒給值,所以bo=‘first’
? ? ? ? ? ? update($("span:first"), $("span:last"), bo);//這里調用了上面自定義的update函數,把第一個span元素給了參數first(是空的),把第二個span元素給了參數jishu(是0),把bo的值個給了第三個參數biaoti(是first),結果就是把第一個span的text改為了first,把第二個span的0改為了0+1,
? ? ? ? });
? ? ? ? //通過自定義事件調用,更新次數
? ? ? ? $("button:last").click(function() {//這里給第二個按鈕加了個監聽單擊事件,執行一個函數
? ? ? ? ? ? $("button:first").trigger('click', 'last');//執行的內容是第一個按鈕的單擊事件,但是傳入了一個參數值為last;這里就等于把last給了上一個事件里的bo,然后在執行bo=bo||‘first’的時候,因為bo有了值,所以就不是first了,而是last,最后抬頭就變成了傳入的last
? ? ? ? });
? ? </script>
2020-04-12
小白的理解,供參考,歡迎交流