[DHTML]让人郁闷的mouse Capture,为什么总是只能执行一个事件,不能执行后续的事件?

简介:


关于mouse capture的介绍:
http://msdn2.microsoft.com/en-us/library/ms537630.aspx
msdn for VS2005: ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.WEBDEV.v10.en/dhtml/workshop/author/dhtml/overview/mousecapture.htm

按照上面的介绍:"All mouse events fire on an object with setCapture",但下面代码的测试结果是:
1. 页面加载时,就会执行test2的onmousemove事件(我把鼠标移出IE,按F5刷新还是会弹出'move'),为什么加载时就会执行该事件?该事件是怎么触发的?
2. 若保留test2的onmousemove事件(相对下面的3而言),则鼠标点击空白地方,不会弹出任何框,为什么执行了onmouseover事件就不能执行其他事件了?;
3. 若去掉test2的onmousemove事件,当鼠标点击空白地方,只有第一次点击会弹出'2',以后都不会弹出‘1’或‘2’,为什么只有第一次可以弹出来?
4. setCapture()据说可以带参数true或false(The setCapture method accepts an optional Boolean value. By default, the Boolean value is true and the object with mouse capture will fire all events, regardless of the origin. Setting the Boolean to false will cause the object with mouse capture to fire only events contained within it.),但true和false的测试结果是一样的,不知道究竟有啥区别?

 1 None.gif < HTML >
 2 None.gif < body  onload ="loadBody()" >
 3 None.gif        Test1 < br />
 4 None.gif     < id =test1  style ="background-color:red"  onclick ="click1()" > Test </ p >< br />
 5 None.gif     < id =test2  style ="background-color:red"  onclick ="click2()"  onmousemove ="move()" > Test </ p >< br />
 6 None.gif    Test2 < br />
 7 None.gif </ BODY >
 8 ExpandedBlockStart.gif < script >
 9InBlock.gif    function loadBody()
10ExpandedSubBlockStart.gif    {
11InBlock.gif        document.all.test1.setCapture();        
12InBlock.gif        document.all.test2.setCapture();
13ExpandedSubBlockEnd.gif    }

14InBlock.gif    
15InBlock.gif    function click1()
16ExpandedSubBlockStart.gif    {
17InBlock.gif        alert('1');        
18ExpandedSubBlockEnd.gif    }

19InBlock.gif    
20InBlock.gif    function click2()
21ExpandedSubBlockStart.gif    {
22InBlock.gif        alert('2');
23ExpandedSubBlockEnd.gif    }

24InBlock.gif    
25InBlock.gif    function move()
26ExpandedSubBlockStart.gif    {
27InBlock.gif        alert('move');
28ExpandedBlockEnd.gif    }

29None.gif
</ script >
30 None.gif </ HTML >

本文转自Silent Void博客园博客,原文链接:http://www.cnblogs.com/happyhippy/archive/2007/07/12/815959.html ,如需转载请自行联系原作者
相关文章
|
5月前
|
开发者
移动端 click 事件、touch 事件、tap 事件的区别
移动端 click 事件、touch 事件、tap 事件的区别
28 1
|
5月前
|
JavaScript 前端开发 API
「深入探究Web页面生命周期:DOMContentLoaded、load、beforeunload和unload事件」
在 Web 开发中,了解页面生命周期是非常重要的。页面生命周期定义了页面从加载到卸载的整个过程,包括各种事件和阶段。在本文中,我们将详细介绍四个关键事件:DOMContentLoaded、load、beforeunload 和 unload。我们将探讨这些事件的属性、API、应用场景,并提供一些代码示例和参考资料。
|
JavaScript
使用jquery中实现按回车触发按钮事件和点击提交按钮触发的是一个事件
使用jquery中实现按回车触发按钮事件和点击提交按钮触发的是一个事件
133 0
|
JavaScript
解决input 有多少个radio绑定change事件,手动触发就会执行多少次问题
如题,相信大家都会遇到这个问题,那么为什么会触发多次呢?其实当你用jquery绑定onchange事件的时候你就无形中给每个radio绑定了事件,所以才会出现执行多少次的问题了,那么如何解决呢,其实这个问题就是最好的解决方法了,你想阿,一组radio当然只会选中一个,但是没有 选中的radio也会执...
1186 0
|
JavaScript
JS处理打拼音时触发input事件bug
JS处理打拼音时触发input事件bug
日常开发遇到的坑click && focus事件 运行2次函数的解决方法
click && focus事件 运行2次函数的解决方法
1232 0
VBS调用keybd_event事件
----------------发送alt+v组合按键----------------------Set Wrap = CreateObject("DynamicWrapper") Wrap.Register "USER32.
1100 0
|
Windows
背水一战 Windows 10 (68) - 控件(控件基类): UIElement - Pointer 相关事件, Tap 相关事件, Key 相关事件, Focus 相关事件
原文:背水一战 Windows 10 (68) - 控件(控件基类): UIElement - Pointer 相关事件, Tap 相关事件, Key 相关事件, Focus 相关事件 [源码下载] 背水一战 Windows 10 (68) - 控件(控件基类): UIElement - Poin...
1203 0
WebBrowser 的 DocumentCompleted事件不执行的解决方法
原文:WebBrowser 的 DocumentCompleted事件不执行的解决方法 WebBrowser 的 DocumentCompleted事件不执行的解决方法: 使用WebBrowser的ProgressChanged事件,在时间中判断((WebBrowser)sender).ReadyState == WebBrowserReadyState.Complete是否成立,若成立则执行DocumentCompleted的处理。
1517 0