第九課 事件冒泡 捕獲

2022-08-23 12:21:14 字數 1987 閱讀 6098

<

ul onclick

="alert(this.nodename)"

>

<

li onclick

="alert(this.nodename)"

>這是第乙個

li>

ul>

延伸,普通的事件觸發只能一次觸發,如下**,只能執行最後一次事件

<

button

id="but"

>點選試試

button

>

<

script

>

varbut

=document.getelementbyid(

"but");

but.onclick

=function

() ;

but.onclick

=function

(ev)

script

>

如果想要多個事件都被執行,那麼用addeventlistener方法,如下

<

ul>

<

li id

="li"

>這是第乙個

li>

ul>

<

script

>

vara

=document.getelementbyid("li

");a.addeventlistener(

'click',

function

(ev) ,

false

); a.addeventlistener(

'click',

function

(ev) ,

false

)

script

>

核心核心核心,冒泡和捕獲的測試方法,仍然是這個函式addeventlistener,函式具體說明

element.addeventlistener(event, function, usecapture)

引數描述

event

function

必須。指定要事件觸發時執行的函式。 

當事件物件會作為第乙個引數傳入函式。 事件物件的型別取決於特定的事件。例如, "click" 事件屬於 mouseevent(滑鼠事件) 物件。

usecapture

可選。布林值,指定事件是否在捕獲或冒泡階段執行。

可能值:

測試**

<

div

id="one"

>

<

div

id="two"

>

<

div

id="three"

>

<

input

type

="button"

value

="click"

>

div>

div>

div>

<

script

>

vartwo

=document.getelementbyid(

"two");

two.addeventlistener(

'click',

function

(ev) ); //在這裡分別新增false和true屬性來測試,不填寫預設是false,true為捕獲時觸發,false為冒泡時觸發

varthree

=document.getelementbyid(

"three");

three.addeventlistener(

'click',

function

(ev) );

script

>

第九課 變數

任務與 修改 沒有定義變數r,在第四行float r1,r2之後加上r就可以 include include intmain 閱讀程式 閱讀下面的程式,在閱讀過程中,請為每乙個變數畫出乙個方框,代表對應的記憶體空間。隨著閱讀,標明變數的變化過程,達到讀懂程式的目的。include intmain 圖...

C語言第九課

主要內容 高階指標 結構體指標 一 結構體指標 指向結構體變數的指標叫做結構體指標 typedef struct student student student stu student p stu student 結構體型別的指標 型別 p 結構體指標變數 變數名 結構體訪問成員變數 示例 type...

第九課 VBO索引

到目前為止,我們在建立vbo時總是重複儲存三角形公共邊的頂點。本課將介紹索引。索引是通過索引緩衝 index buffer 來實現的頂點復用。索引緩衝儲存的是整數 每個三角形有三個整數索引,分別指向各種屬性緩衝 attribute buffer 頂點位置 顏色 uv座標 其他uv座標 法線緩衝法線等...