JavaScript之模擬事件(事件)

2021-07-31 22:42:44 字數 1187 閱讀 7141

第一步:通過document.createevent()方法建立event物件。

可以在document物件上使用createevent()方法建立event事件物件。該方法接收乙個引數,表示事件型別的字串。dom2中字串是以複數表示的,在dom3中字串是以單數表示。表示事件型別的字串有:dom2中表示事件型別的字串

第二步:初始化建立的event物件。使用initmouseevent、initkeyboardevent、initmutationevent並加上與事件有關的資訊分別初始化滑鼠、鍵盤、變動事件物件。

與初始化事件物件有關的常見屬性有:

第三步:使用dispatchevent()觸發模擬的事件。該方法接收乙個引數,該引數就是建立的事件物件。這個方法由頁面中的乙個元素呼叫使用。

使用createevent()方法並接收「mouseevent」引數建立乙個滑鼠事件物件,該事件物件返回乙個

以上這些引數與瀏覽器事件的滑鼠事件的event物件包含的屬性一一對應。前4個很重要,經常使用。

下面舉例乙個滑鼠單擊事件:

使用document.createevent()方法並傳入引數keyboardevent可以建立鍵盤事件物件。並用initkeyevent()方法初始化事件物件。最後使用dispatchevent()方法觸發事件。

舉例按住"ctrl"鍵的同時按下"b"鍵。

建立自己的事件,呼叫createvent("customevent")。返回initcustomevent()方法。

效果:

在ie中模擬事件與在dom中模擬事件有點不同的是:使用document.createeventobject()建立事件物件,這個方法不傳入引數,返回乙個通用的event物件。初始化事件物件需要手工新增屬性。最後使用fireevent()方法觸發事件,這個方法需要傳入兩個引數:事件處理程式名、event物件。

mysql模擬事務轉賬

測試事務 建立表create table account id int 3 notnull auto increment name varchar 30 not null money decimal 9 2 not null primary key id engine innodb default ...

Mysql模擬事務隔離級別步驟

1 查詢當前會話事務隔離級別 select session.tx isolation 2 設定事務隔離級別 set session transaction isolation level 事務隔離級別 3 開啟事務 set autocommit 0 begin 4 執行sql,檢視結果 5 提交事務...

javascript之模擬滾動條

demo 如下 孩兒勵志出湘關,學不成名終不還。埋骨何須桑梓地,人生無處不青山。孩兒勵志出湘關,學不成名終不還。埋骨何須桑梓地,人生無處不青山。孩兒勵志出湘關,學不成名終不還。埋骨何須桑梓地,人生無處不青山。孩兒勵志出湘關,學不成名終不還。埋骨何須桑梓地,人生無處不青山。孩兒勵志出湘關,學不成名終不...