Javascript 事件捕獲的備忘(setCapture,captureEvents)
更新時(shí)間:2006年09月07日 00:00:00 作者:
這段時(shí)間一直在給QZone研究Js拖放的問(wèn)題。今天突然發(fā)現(xiàn)live.com的模塊拖放居然可以跨出瀏覽器。到底是什么方法讓 mousemove 和 mouseup 事件可以到瀏覽器外也可以觸發(fā),于是把整個(gè)live的js down下來(lái)分析,結(jié)果發(fā)現(xiàn)是一個(gè)小小的函數(shù)在做"怪" 。
object.setCapture() 當(dāng)一個(gè)object的被 setCapture 后,他的方法將會(huì)被繼承到整個(gè)文檔進(jìn)行捕獲。
當(dāng)不需要把方法繼承到整個(gè)文檔捕獲時(shí),要用 object.releaseCapture()
Mozilla 也有類(lèi)似的功能,方法稍微不同
window.captureEvents(Event.eventType)
window.releaseEvents(Event.eventType)
Event 是Mozilla特殊的一個(gè)object.
eventType 包括: Abort, Blur, Click, Change, DblClick, DragDrop, Error, Focus, KeyDown, KeyPress, KeyUp, Load, MouseDown
以下例子偷懶一下,不做Mozilla的兼容,只是為了演示
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
相關(guān)聯(lián)接:
For IE
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/setcapture.asp
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/releasecapture.asp
For Mozilla
http://developer.mozilla.org/en/docs/DOM:window.captureEvents
http://developer.mozilla.org/en/docs/DOM:window.releaseEvents
object.setCapture() 當(dāng)一個(gè)object的被 setCapture 后,他的方法將會(huì)被繼承到整個(gè)文檔進(jìn)行捕獲。
當(dāng)不需要把方法繼承到整個(gè)文檔捕獲時(shí),要用 object.releaseCapture()
Mozilla 也有類(lèi)似的功能,方法稍微不同
window.captureEvents(Event.eventType)
window.releaseEvents(Event.eventType)
Event 是Mozilla特殊的一個(gè)object.
eventType 包括: Abort, Blur, Click, Change, DblClick, DragDrop, Error, Focus, KeyDown, KeyPress, KeyUp, Load, MouseDown
以下例子偷懶一下,不做Mozilla的兼容,只是為了演示
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
相關(guān)聯(lián)接:
For IE
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/setcapture.asp
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/releasecapture.asp
For Mozilla
http://developer.mozilla.org/en/docs/DOM:window.captureEvents
http://developer.mozilla.org/en/docs/DOM:window.releaseEvents
您可能感興趣的文章:
- js之事件冒泡和事件捕獲詳細(xì)介紹
- js阻止默認(rèn)事件與js阻止事件冒泡示例分享 js阻止冒泡事件
- javascript事件冒泡詳解和捕獲、阻止方法
- js冒泡、捕獲事件及阻止冒泡方法詳細(xì)總結(jié)
- js阻止冒泡及jquery阻止事件冒泡示例介紹
- zepto.js中tap事件阻止冒泡的實(shí)現(xiàn)方法
- js event事件的傳遞與冒泡處理
- JS冒泡事件的快速解決方法
- JS阻止冒泡事件以及默認(rèn)事件發(fā)生的簡(jiǎn)單方法
- js如何取消事件冒泡
- js事件監(jiān)聽(tīng)機(jī)制(事件捕獲)總結(jié)
- JavaScript 捕獲窗口關(guān)閉事件
- JavaScript實(shí)現(xiàn)父子dom同時(shí)綁定兩個(gè)點(diǎn)擊事件,一個(gè)用捕獲,一個(gè)用冒泡時(shí)執(zhí)行順序的方法
相關(guān)文章
Javascript同時(shí)聲明一連串(多個(gè))變量的方法
這篇文章主要給大家介紹了利用Javascript聲明一連串(也就是多個(gè))變量的方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-01-01
Javascript中設(shè)置默認(rèn)參數(shù)值示例
這篇文章主要介紹了Javascript中默認(rèn)參數(shù)值的設(shè)置,很簡(jiǎn)單,但很實(shí)用,需要的朋友可以參考下2014-09-09
js局部刷新頁(yè)面時(shí)間具體實(shí)現(xiàn)
這篇文章介紹了js局部刷新頁(yè)面時(shí)間具體實(shí)現(xiàn),需要的朋友可以參考一下2013-07-07
微信小程序?qū)崿F(xiàn)搜索功能并跳轉(zhuǎn)搜索結(jié)果頁(yè)面
本文主要介紹了微信小程序?qū)崿F(xiàn)搜索功能并跳轉(zhuǎn)搜索結(jié)果頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12
詳解JavaScript基于面向?qū)ο笾畡?chuàng)建對(duì)象(1)
這篇文章主要介紹了JavaScript基于面向?qū)ο笾畡?chuàng)建對(duì)象,對(duì)創(chuàng)建對(duì)象進(jìn)行了詳細(xì)描述,感興趣的小伙伴們可以參考一下2015-12-12
小程序云開(kāi)發(fā)如何實(shí)現(xiàn)圖片上傳及發(fā)表文字
這篇文章主要為大家詳細(xì)介紹了小程序云開(kāi)發(fā)教程,如何實(shí)現(xiàn)圖片上傳及發(fā)表文字,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
javascript根據(jù)時(shí)間生成m位隨機(jī)數(shù)最大13位
javascript根據(jù)時(shí)間生成m位隨機(jī)數(shù),最大13位隨機(jī)數(shù),并且不能保證首位不為0,實(shí)現(xiàn)代碼如下,需要的朋友可以參考下2014-10-10

