天天看點

js模拟點選事件實作代碼js模拟點選事件實作代碼

在實際的應用開發中,我們會常常用到JS的模事件,比如說點選事件,舉個簡單的例子,點選表單外的“送出”按鈕來送出表單。上代碼吧

html: 

送出 

Javscript: 

經過測試,IE,FF,Chrome,Opera,Safari都沒有問題,均可正常送出表單。 

但在實際的設計中,為了讓送出按鈕更好看,buildder經常把它們用a标簽來處理,加個背景圖檔來模拟按鈕,我們仍然用上面的思路來嘗試,增加一個a标簽,讓它來送出表單,我們僅修改html。 

Html: 

javascript: 

運作後,問題出現了,IE、FF、Opera均OK,但Chrome和Safari不能正常運作,後來網上搜尋了下,發現a标簽并不是和按鈕一樣有onclick()事件的,解決辦法是針對

IE 和 FF編寫不同的邏輯,JS代碼如下: 

至此,問題解決,雖然這個問題很簡單,但很容易被大家忽略,貼出來和大家一起分享。 

文法: 

createEvent(eventType)

參數

描述

eventType

想擷取的 Event

傳回值

抛出

如果實作支援需要的事件類型,該方法将抛出代碼為

說明

該方法将建立一種新的事件類型,該類型由參數 eventType 指定。注意,該參數的值不是要建立的事件接口的名稱,而是定義那個接口的

DOM 子產品的名稱。

下表列出了 eventType 的合法值和每個值建立的事件接口:

事件接口

初始化方法

HTMLEvents

HTMLEvent

iniEvent()

MouseEvents

MouseEvent

iniMouseEvent()

UIEvents

UIEvent

iniUIEvent()

用該方法建立了 Event

該方法實際上不是由 Document

接口定義的,而是由 DocumentEvent 接口定義的。如果一個實作支援 Event 子產品,那麼 Document 對象就會實作

DocumentEvent 接口并支援該方法。

繼續閱讀