JS setCapture 区域外事件捕捉


Posted in Javascript onMarch 18, 2010

不过setCapture不支持键盘事件, 只能捕获以下鼠标事件:onmousedown、onmouseup、onmousemove、onclick、ondblclick、onmouseover和onmouseout。

程序中主要是要捕获onmousemove和onmouseup事件。

msdn的介绍中还说到setCapture有一个bool参数,用来设置在容器内的鼠标事件是否都被容器捕获。

参数为true时(默认)容器会捕获容器内所有对象的鼠标事件,即容器内的对象不会触发鼠标事件(跟容器外的对象一样);

参数为false时容器不会捕获容器内对象的鼠标事件,即容器内的对象可以正常地触发事件和取消冒泡。

object.setCapture() 当一个object的被 setCapture 后,他的方法将会被继承到整个文档进行捕获。当不需要把方法继承到整个文档捕获时,要用 object.releaseCapture() 来释放.

Mozilla 也有类似的功能,方法稍微不同

window.captureEvents(Event.eventType)

window.releaseEvents(Event.eventType)

事例:

<HTML> 
<BODY> 
<div id="m_Div" style="width:200px;height:200px;border:1px solid #b0bca5;padding:2px" onclick="alert('Hello')">点一下IE的菜单或者按钮看看:) 
又或者IE窗口外的地方</div> 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
document.getElementById("m_Div").setCapture() 
//--> 
</SCRIPT> 
</BODY> 
</HTML>

在调用setCapture()后, 捕捉到事件后自动释放, 如果在连续对事件捕捉,需要在调用的事件里再次执行setCaptuer()
Javascript 相关文章推荐
alixixi runcode.asp的代码不错的应用
Aug 08 Javascript
JavaScript 实现模态对话框 源代码大全
May 02 Javascript
JS中的eval 为什么加括号
Apr 13 Javascript
老生常谈遮罩层 滚动条的问题
Apr 29 Javascript
Javascript对象字面量的理解
Jun 22 Javascript
jQuery 检查某个元素在页面上是否存在实例代码
Oct 27 Javascript
Bootstrap 3多级下拉菜单实例
Nov 23 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
Dec 05 Javascript
jQuery实现简单的Ajax调用功能示例
Feb 15 jQuery
es6数值的扩展方法
Mar 11 Javascript
Vue form表单动态添加组件实战案例
Sep 02 Javascript
如何用JavaScript检测当前浏览器是无头浏览器
Apr 27 Javascript
小议Javascript中的this指针
Mar 18 #Javascript
jQuery each()方法的使用方法
Mar 18 #Javascript
jQuery each()小议
Mar 18 #Javascript
jquery ajax执行后台方法
Mar 18 #Javascript
jQuery中与toggleClass等价的程序段 以及未来学习的方向
Mar 18 #Javascript
javascript 验证日期的函数
Mar 18 #Javascript
12个非常有创意的JavaScript小游戏
Mar 18 #Javascript
You might like
第四章 php数学运算
2011/12/30 PHP
将时间以距今多久的形式表示,PHP,js双版本
2012/09/25 PHP
PHP如何通过AJAX方式实现登录功能
2015/11/23 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
将HTML自动转为JS代码
2006/06/26 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
jQuery表格插件datatables用法总结
2014/09/05 Javascript
JavaScript中的anchor()方法使用详解
2015/06/08 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
2017/02/09 Javascript
利用原生js实现html5小游戏之打砖块(附源码)
2018/01/03 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
vue-quill-editor富文本编辑器简单使用方法
2018/09/21 Javascript
Vue核心概念Getter的使用方法
2019/01/18 Javascript
js 压缩图片的示例(只缩小体积,不更改图片尺寸)
2020/10/21 Javascript
Python MySQLdb Linux下安装笔记
2015/05/09 Python
python装饰器与递归算法详解
2016/02/18 Python
Python 文件操作的详解及实例
2017/09/18 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
2018/04/05 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
Pytorch释放显存占用方式
2020/01/13 Python
Python爬虫抓取论坛关键字过程解析
2020/10/19 Python
草莓网官网:StrawberryNET
2019/08/21 全球购物
Hotels.com越南:酒店预订
2019/10/29 全球购物
中学生打架检讨书
2014/02/10 职场文书
文案策划岗位职责
2015/02/11 职场文书
清明节网上祭英烈寄语2015
2015/03/04 职场文书
欢迎新生标语2015
2015/07/16 职场文书
高一语文教学反思
2016/02/16 职场文书
靠谱的活动总结
2019/04/16 职场文书
mysql5.7使用binlog 恢复数据的方法
2021/06/03 MySQL
什么是Python装饰器?如何定义和使用?
2022/04/11 Python