亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

冒泡不是從子元素往父元素冒泡么 怎么給父元素綁定click 子元素有行為

冒泡不是從子元素往父元素冒泡么 怎么給父元素綁定click 子元素有行為

正在回答

5 回答

從冒泡字面理解,是從有的到無的傳播過程,但是在代碼編寫中就不能這么認為了,制定規則的人事將事件綁定在祖先元素上,然后讓后代給祖先冒泡,規則就是這樣只能這樣理解

0 回復 有任何疑惑可以回復我~

因為冒泡機制,點擊li元素的時候冒泡到父元素ul,而ul綁定了事件,觸發了函數,就影響到了li元素

0 回復 有任何疑惑可以回復我~

對于點擊li彈出不同內容,是因為event對象特有的target.textContent屬性。雖然你都是冒泡觸發ul。但是到底時那個li被點擊了,然后冒泡到ul上觸發ul綁定的事件的,那么這個event.target就指向具體那個li。相當于li和ul都被點擊了,但是ul有事件被觸發,而li有內在的東西被event.target這個屬性獲得并經過alter輸出來。你是工作了的還是正在學習

2 回復 有任何疑惑可以回復我~
#1

我是賣報的小行家0

您好 我想問一個問題可以嗎 這樣我不僅僅是點擊li可以觸發事件 我點擊ul空白處也直接觸發了事件但是這個時候對象就是ul了 感覺目標就不清楚了很混亂啊
2016-07-13 回復 有任何疑惑可以回復我~
#2

子涵_program 回復 我是賣報的小行家0

因為默認margin=0.你點擊ul里面的空白處,都會點擊到其中一個li,因為每個li都占滿了ul的內部。當然如果設置margin,點擊margin外的空白處理論上就是點擊了ul。我沒實踐過不知道對不對
2016-07-13 回復 有任何疑惑可以回復我~
#3

我是賣報的小行家0 回復 子涵_program

ooo 好的 謝謝哈
2016-07-16 回復 有任何疑惑可以回復我~

這里的例子這樣理解:在ul綁定要給點擊事件。當我click <li>時,li上沒有事件,但是由于冒泡機制的存在,點擊li就相當于ul,這也是從子元素往父元素冒泡。用event對象特有的target.textContent屬性來獲取觸發此事件的具體的li元素的文本。

0 回復 有任何疑惑可以回復我~
#1

Cassie_yu

能問一下,子元素的內部是不是也是父元素的內部呢?還是說兩個是獨立的空間呢? 因為子元素并沒有click事件,那么點擊子元素導致ul上的click事件觸發,可不可以理解為 因為li在ul的內部,所以點擊li也相當于點擊了ul呢?
2016-07-12 回復 有任何疑惑可以回復我~
#2

子涵_program 回復 Cassie_yu

冒泡機制里,一個元素下面的所有后代元素都會觸發祖先元素的事件,所有你的理解也可以的。也就是說ul里面的不管時子元素還是孫子元素。當點擊li或者li里面的元素時,都會默認同時點擊了ul和ul的祖先元素。而剛好ul綁定有事件。所有觸發ul的事件
2016-07-12 回復 有任何疑惑可以回復我~
#3

Cassie_yu 回復 子涵_program

但是我又覺得如果這樣理解的話,我就又不能理解為什么點擊li的時候會彈出不同的內容了,因為其實都是點擊了ul嘛~~
2016-07-12 回復 有任何疑惑可以回復我~
#4

子涵_program 回復 Cassie_yu

對于點擊li彈出不同內容,是因為event對象特有的target.textContent屬性。雖然你都是冒泡觸發ul。但是到底時那個li被點擊了,然后冒泡到ul上觸發ul綁定的事件的,那么這個event.target就指向具體那個li。相當于li和ul都被點擊了,但是ul有事件被觸發,而li有內在的東西被event.target這個屬性獲得并經過alter輸出來。你是工作了的還是正在學習
2016-07-12 回復 有任何疑惑可以回復我~
#5

Cassie_yu 回復 子涵_program

好吧 我應該是把this和target.textContent弄混了 謝啦~~
2016-07-12 回復 有任何疑惑可以回復我~
#6

子涵_program 回復 Cassie_yu

你是初學者嗎?還是正在做著前端?
2016-07-12 回復 有任何疑惑可以回復我~
#7

panmc2 回復 Cassie_yu

彈出內容的函數是 function(e){ alert('觸發的元素是內容是: ' + e.target.textContent) } 這個函數的功能就是彈出“事件對象”的文本內容,因為鼠標點擊的對象是不同的,所以彈出的每個“事件對象”的文本內容也不同。
2016-07-21 回復 有任何疑惑可以回復我~
#8

鈴鐺3 回復 Cassie_yu

應該是點擊的是li只是由li冒泡到了ul 觸發了事件
2016-08-11 回復 有任何疑惑可以回復我~
查看5條回復

這結果不正是事件冒泡機制的最終目的么~當一個父元素下的多個子元素要表現出相同的效果的時候,利用冒泡機制給父元素綁定事件,以后你只要點擊子元素,都會冒泡到父元素,從而利用父元素綁定的事件~這樣就不用給每個子元素都去進行綁定,減少了代碼冗余呀~~

17 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

冒泡不是從子元素往父元素冒泡么 怎么給父元素綁定click 子元素有行為

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號