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 相关文章推荐
JavaScript 创建对象和构造类实现代码
Jul 30 Javascript
jQuery Ajax 仿AjaxPro.Utility.RegisterTypeForAjax辅助方法
Sep 27 Javascript
js中判断用户输入的值是否为空的简单实例
Dec 23 Javascript
JavaScript按位运算符的应用简析
Feb 04 Javascript
node.js中的fs.fsyncSync方法使用说明
Dec 15 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
Nov 25 Javascript
jQuery实现简单的tab标签页效果
Sep 12 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
Oct 01 Javascript
详解MVC如何使用开源分页插件(shenniu.pager.js)
Dec 16 Javascript
Bootstrap模态框使用详解
Feb 15 Javascript
小程序实现留言板
Nov 02 Javascript
JavaScript实现复选框全选和取消全选
Nov 20 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
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)
2012/01/03 PHP
关于js与php互相传值的介绍
2013/06/25 PHP
PHP易混淆函数的区别及用法汇总
2014/11/22 PHP
PHP性能优化大全(php.ini)
2016/05/20 PHP
注意!PHP 7中不要做的10件事
2016/09/18 PHP
php模拟实现斗地主发牌
2020/04/22 PHP
javascript中的数字与字符串相加实例分析
2011/08/14 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
js 走马灯简单实例
2013/11/21 Javascript
Javascript中的关键字和保留字整理
2014/10/16 Javascript
Position属性之relative用法
2015/12/14 Javascript
JS跨域解决方案之使用CORS实现跨域
2016/04/14 Javascript
jQuery简单实现列表隐藏和显示效果示例
2016/09/12 Javascript
基于Javascript实现文件实时加载进度的方法
2016/10/12 Javascript
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
简单了解vue中父子组件如何相互传递值(基础向)
2019/07/12 Javascript
20道JS原理题助你面试一臂之力(必看)
2019/07/22 Javascript
用Node写一条配置环境的指令
2019/11/14 Javascript
Node.js API详解之 util模块用法实例分析
2020/05/09 Javascript
python统计字符串中指定字符出现次数的方法
2015/04/04 Python
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
django请求返回不同的类型图片json,xml,html的实例
2018/05/22 Python
Python日期时间对象转换为字符串的实例
2018/06/22 Python
Python flask框架post接口调用示例
2019/07/03 Python
Django如何使用第三方服务发送电子邮件
2019/08/14 Python
python分布式编程实现过程解析
2019/11/08 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
基于python实现查询ip地址来源
2020/06/02 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
阿里巴巴国际站:Alibaba.com
2016/07/21 全球购物
粉红色的鲸鱼:Vineyard Vines
2018/02/17 全球购物
护士的岗位职责
2013/12/04 职场文书
化学专业自荐信
2014/05/28 职场文书
财务科长个人对照检查材料
2014/09/18 职场文书
员工辞职信范文
2015/03/02 职场文书