JS——事件

页面导航:首页 > 网络编程 > JavaScript > JS——事件

JS——事件

来源: 作者: 时间:2016-01-23 10:23 【

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

事件分类:

鼠标、键盘、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都是通过事件来对用户的操作做出处理,用户一定是通过鼠标或键盘来进行操作的这都会触发事件,然后通过事件处理完成用户的请求,都是事件驱动的。

 

 

Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<