欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > HTML > 5.5 关于Event对象

5.5 关于Event对象

2018-05-06 556 收藏 0 赞一个 0 真差劲 0 去评论

在你完全掌握dHTML前,你需要了解event对象。两种4.0浏览器都包含event对象。它在事件创立时产生,如点击一个可点击的对象,移动鼠标,或聚焦到一个窗体元素上。Event对象被创建然后传递给处理事件的函数。

下面是event对象属性的描述,以及Netscape和IE处理它们的方式:

描述Microsoft 属性Netscape属性
代表事件类型的字符串typetype
代表最初发送给对象事件的字符串srcElementtarget
光标横坐标xx
光标纵坐标yy
相对于页面的横坐标clientXpageX
相对于页面的纵坐标clientYpageY
相对于屏幕的横坐标screenXscreenX
相对于屏幕的纵坐标screenYscreenY
键代码keyCodewhich
Netscape返回键的代码,IE 返回true或falsetKey
ctrlKey
shiftKey
modifiers

4.0浏览器增加了一些新事件:

onDblClick鼠标双击
onKeyDown键被按下
onKeyPress键被按下然后被释放
onKeyUp键被释放
onMouseDown鼠标被按下
onMouseMove鼠标移动
onMouseUp鼠标被释放
onResize窗口被调整大小

4.0浏览器也增加了处理事件的新方法,虽然它们(Netscape和IE)的方式不同。Netscape用的是“时间捕捉”,IE用的是“事件气泡”。

事件处理对Netscape处理如mouseMove或keyPress等事件是必须的,它并不隐含指向一个标记或元素。你应该告诉客户注意这些事件,并告诉它用什么函数来处理它们。下面例子用window对象的captureEvents方法来描述正在捕捉的事件:

window.captureEvents(Event.MOUSEMOVE);

注意到在不用on作为名称一部分的情况下特定事件是如何被指向的。你只是告诉Netscape注意所有发生在窗口中的事件并捕捉它们。然后你需要告诉Netscape用这些被捕捉的时间做些什么。注意on又出现了。

window.onMouseMove = handlerFunction; function handerFunction(yourEvent) { alert(yourEvent.screenX); }

这段代码是一个演示事件过程的烦人的例子。每次你移动鼠标,一个对话框会跳出来告诉你它的横坐标位置。以这种方式处理的事件传递一个指针到event对象。从这儿你可以获取必要的信息。一旦你厌倦了捕捉事件,你可以象这样释放它们:

window.releaseEvents(Event.MOUSEMOVE);

于是这种类型的事件不再被捕捉。

IE用不同的方法处理事件,叫做“事件气泡”。在这种方法中,如果你有这样一个结构:

<bodyonclick="bloorf()"><ponclick="baz()"><emonclick="bar()"><strongonclick="foo()">Click on me</strong></em></p></body>

如果你点击strong标记内的文本,它接收到一个onClick事件,然后发送onclick事件给<em>标记,处理它然后发送到<p>标记,等等,然后直到窗口。这样每个元素以自己的方式处理点击。但是如果你想停止气泡上传,可以取消气泡。

<script>  
function foo() {  
     doSomeThing();  
     this.event.cancelBubble = true;  
}  
</script>

所以如果你不想让某个事件传递到所有它包含的标记,可以象上面那样阻止它。

你可以看到,因为两种浏览器存在相似的事件,每一步都需要大量的条件化工作,而且没有简单的方式把它们映射到一个句法中。

返回主目录
暂无界面图片

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

大家评论