码迷,mamicode.com
首页 > Web开发 > 详细

JS——事件

时间:2015-06-15 16:38:29      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:js   事件   

事件分类:

         鼠标、键盘、HTML

技术分享

         每个事件都对应一个事件函数,函数的名称是由 on+事件名 组成,如鼠标的click事件其事件函数为onclick、键盘的onkeyup、HTML的onload事件。 

       在JS中每个事件被触发时都会产生一个事件对象一般称作为event对象,它包含了所有与事件相关的信息包括导致事件的元素、事件类型等。在使用时我们可以直接收到这个对象。

例如:

input.onclick=function(evt){//接收event对象,不一定就要叫做event
       var e=evt || window.event;  //window.event 是为了兼容IE浏览器
       alert(e);
}

那么当这些事件被触发之后要有怎样的响应要通过事件绑定来实现。

box.addEventListener('click', function () {
        alert('div');
     }, true);

非IE的

第一个参数:事件名    

第二个参数:触发事件做出的响应    

第三个参数:true表示捕获,false表示冒泡 

IE的

window.attachEvent('onload', function () {
        alert(‘Lee’);            //当窗体加载后就输出‘Lee’
});

第一个参数:事件名    

第二个参数:触发事件做出的响应    

如果要兼容两大类型的浏览器可以自己写兼容函数封装到基础库中,在使用时直接调用进行添加和移除事件。

JS的事件总结的差不多了,在看相关的博客是看见米老师的一个问题“JS的事件处理和VB事件有什么关系?”这个结点自己没有意识到,知识网的编制意识还有待增强,那么下面就开始编制这个结点。

这是在vb.net中的一个事件处理。

Private Sub Button3_Click(sender As Object,e As EventArgs) Handles Button3.Click
       Dim A As New Customer
       A.Name = "TOM"
       MessageBox.Show(A.SayHello())
End Sub

这是在JS中的事件处理。

box.addEventListener('click', function () {
        alert('div');
     }, true);


我们从相同点看

         都是对一个对象的事件被触发之后做出响处理,从表面上就看不出其他的相同点,那么就看看他们的不同点。

         在VB.net的事件处理中是有参数的sender和e,而JS中的function无论是否写参都可以获得隐藏的事件对象event。在VB中的e是EventArgs类型的。EventArgs是包含了事件数据的基类,而sender是Object类型的它表示的是被触发事件的对象。sender和e两者相加和JS中的event对象是异曲同工。最后不同点也变成了相同点。

比较之后没有发现什么不同,只是在JS中对事件对象的应用相对要多一些,而在vb.net中的应用比较少,更深入的比较还有待进一步进行。

小结

         JS和vb都是基于对象的语言,对象包括事件、属性、方法。而对于事件处理不论是VB还是JS都是通过事件来对用户的操作做出处理,用户一定是通过鼠标或键盘来进行操作的这都会触发事件,然后通过事件处理完成用户的请求,都是事件驱动的。

 

 

JS——事件

标签:js   事件   

原文地址:http://blog.csdn.net/yxflovegs2012/article/details/46503479

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!