多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > jscript > JavaScript之IE的fireEvent方法

JavaScript之IE的fireEvent方法

來源:程序員人生   發布時間:2014-02-09 17:31:54 閱讀次數:3655次

在IE中提供了一個fireEvent方法,顧名思義就是觸發某個事件發生的意思。剛開始我以為是會跟平時使用onclick()一樣,沒想到最近在寫javascript入門ppt的時候發現了,原來自己太自以為是了!看來還有很多javascript的細節沒有掌握好啊!

現在根據自己的總結詳細的記錄下fireEvent方法的使用。fireEvent是IE提供的一種方法,msdn文檔地址:http://msdn.microsoft.com/en-us/library/ms536423(v=vs.85).aspx

onclick()
我們先看第一段實例代碼:

<ul onclick='alert(event.srcElement.innerHTML);'>
<li id='id1'>i am one;</li>
<li id='id2'>i am two;</li>
<li id='id3'>i am three;</li>
</ul>
<button onclick='document.getElementById("id1").onclick();'>click me!</button>

這段代碼中我們沒有個id1的li添加onclick事件,點擊button,會報錯,提示“對象不支持此屬性或方法”。由此可見,DOM.onclick()需要添加onclick事件之后才能使用。

假如我們把以上的代碼修改為:

<ul onclick='alert(event.srcElement.innerHTML);'>
<li id='id1' onclick='alert(1);'>i am one;</li>
<li id='id2'>i am two;</li>
<li id='id3'>i am three;</li>
</ul>
<button onclick='document.getElementById("id1").onclick();'>click me!</button>

此時,點擊button會觸發onclick事件,但是ul的onclick沒有觸發,這就表明了DOM.onclick()不存在冒泡。

fireEvent()
我們來看看fireEvent跟onclick()觸發事件是否相同。看下面的代碼:

<ul onclick='alert(event.srcElement.innerHTML);'>
<li id='id1'>i am one;</li>
<li id='id2'>i am two;</li>
<li id='id3'>i am three;</li>
</ul>
<button onclick='document.getElementById("id1").fireEvent("onclick")'>fireEvent !</button>

點擊button后,觸發ul的onclick事件,說明fireEvent會引起冒泡,而且沒有發生像onclick()提示“對象不支持此屬性或方法”,說明即使不添加id1的onclick事件也可以冒泡。
由此可以看出,IE中的fireEvent方法類似模擬用戶的鼠標點擊行為,而不是單純的onclick。

總結fireEvent和onclick區別
通過上面的例子可以看出,DOM的fireEvent和onclick(這只是個代表)有以下區別:

onclick需要DOM真正添加了onclick事件,否則會報“對象不支持此屬性或方法”錯誤
onclick不會引起IE的冒泡過程,而fireEvent會引起冒泡,fireEvent更貼近用戶真實的行為觸發
由第二條得出,fireEvent在即使DOM沒有click事件也可以fireEvent,而不會報錯(更貼近用戶真實行為)
最后可以拿下面的代碼測試:

<ul onclick='alert(event.srcElement.innerHTML);'>
<li id='id1' onclick='alert(1);'>i am one;</li>
<li id='id2'>i am two;</li>
<li id='id3'>i am three;</li>
</ul>
<button onclick='document.getElementById("id1").onclick();'>click me!</button>
<button onclick='document.getElementById("id1").fireEvent("onclick")'>fireEvent !</button>

來源:http://www.js8.in/731.html

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产成人精品亚洲一区 | 黄色天堂网站 | 亚洲在线网 | 色偷偷亚洲女人天堂观看欧 | 亚洲精品成人 | 女人18毛片a级毛片一区二区 | 午夜影院在线观看视频 | 欧美人与动人物xxxx9296 | 国产中文久久精品 | 一级毛片免费一级直接观看 | 亚洲天堂久久新 | 日本高清www免费视频软件 | 就操网| freexxxhd性| 性国产videofree极品 | 日韩一区二区不卡中文字幕 | 狠狠躁夜夜躁人人躁婷婷视频 | 亚洲视频免费看 | 曰本裸色私人影院噜噜噜影院 | 又黄又爽又色的性视频 | 老司机午夜免费视频 | 午夜肉伦伦影院 | 国产高清一区二区三区 | 亚洲最大的视频网站 | 免费一区二区三区四区五区 | h网站国产| 亚洲精品国产一区二区 | 亚洲精品在线播放视频 | 奇米4444| 国产精品任我爽爆在线播放66 | 亚洲欧美一区二区视频 | 亚洲影院在线 | 亚洲免费视频在线观看 | 日本一区二区三区在线观看视频 | 午夜私人影院 | 欧美aav| 99视频精品免视3 | 亚洲精品国产v片在线观看 亚洲精品国产啊女成拍色拍 | 成人精品视频在线观看 | 黄色免费网站大全 | 亚洲欧美日韩综合在线 |