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 相关文章推荐
轻轻松松学JS调试(不下载任何工具)
Apr 14 Javascript
innerHTML,outerHTML,innerText,outerText的用法及区别解析
Dec 16 Javascript
JS日期格式化之javascript Date format
Oct 01 Javascript
fullpage.js全屏滚动插件使用实例
Sep 06 Javascript
vue.js+boostrap项目实践(案例详解)
Sep 21 Javascript
简单实现IONIC购物车功能
Jan 10 Javascript
基于JS实现翻书效果的页面切换样式
Feb 16 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
Feb 18 Javascript
微信小程序wxml列表渲染原理解析
Nov 27 Javascript
JS判断数组是否包含某元素实现方法汇总
Jun 24 Javascript
解决vue项目运行提示Warnings while compiling.警告的问题
Sep 18 Javascript
vue配置型表格基于el-table拓展之table-plus组件
Apr 12 Vue.js
小议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写出自己的BLOG系统 2
2010/04/12 PHP
PHP学习笔记 (1) 环境配置与代码调试
2011/06/19 PHP
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
PHP获取远程图片并保存到本地的方法
2015/05/12 PHP
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
php过滤htmlspecialchars() 函数实现把预定义的字符转换为 HTML 实体用法分析
2019/06/25 PHP
HTML node相关的一些资料整理
2010/01/01 Javascript
jquery中实现标签切换效果的代码
2011/03/01 Javascript
jquery实现点击变换导航样式的方法
2015/08/31 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
在页面中输出当前客户端时间javascript实例代码
2016/03/02 Javascript
ReactNative页面跳转实例代码
2016/09/27 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
Element-ui table中过滤条件变更表格内容的方法
2018/03/02 Javascript
基于express中路由规则及获取请求参数的方法
2018/03/12 Javascript
微信小程序实现卡片层叠滑动效果
2019/06/21 Javascript
element的el-table中记录滚动条位置的示例代码
2019/11/06 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
Python实现模拟登录及表单提交的方法
2015/07/25 Python
Python随机生成带特殊字符的密码
2016/03/02 Python
python3.6使用tkinter实现弹跳小球游戏
2019/05/09 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
2019/08/13 Python
查看Python依赖包及其版本号信息的方法
2019/08/13 Python
Spring实战之使用util:命名空间简化配置操作示例
2019/12/09 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
python mongo 向数据中的数组类型新增数据操作
2020/12/05 Python
YOOX台湾:意大利奢侈品电商
2018/10/13 全球购物
劳动之星获奖感言
2014/02/01 职场文书
写给老婆的检讨书
2014/02/21 职场文书
毕业设计论文评语
2014/12/31 职场文书
客户经理岗位职责
2015/01/31 职场文书
慰问信的写作格式及范文!
2019/06/24 职场文书
nginx反向代理时如何保持长连接
2021/03/31 Servers
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL
pycharm代码删除恢复的方法
2021/06/26 Python
Python实现批量将文件复制到新的目录中再修改名称
2022/04/12 Python