javascript中常用的事件绑定方法

我们要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数。所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称。

在JavaScript中,有三种常用的绑定事件的方法:

  1. 在DOM元素中直接绑定;
  2. 在JavaScript代码中绑定;
  3. 绑定事件监听函数。

一. 在DOM元素中直接绑定

这里的DOM元素,可以理解为HTML标签。JavaScript支持在标签中直接绑定事件,语法为:
    onXXX="JavaScript Code"

其中:

  onXXX 为事件名称。例如,鼠标单击事件 onclick ,鼠标双击事件 ondouble,鼠标移入事件 onmouseover,鼠标移出事件 onmouseout 等。

    JavaScript Code 为处理事件的JavaScript代码,一般是函数。

例如,单击一个按钮,弹出警告框的代码有如下两种写法。

1. 原生函数

  1. <input onclick="alert(‘谢谢支持‘)" type="button" value="点击我,弹出警告框" />

2. 自定义函数

  1. <input onclick="myAlert()" type="button" value="点击我,弹出警告框" />
  2. <script type="text/javascript">
  3. function myAlert(){
  4. alert("谢谢支持");
  5. }
  6. </script>

二. 在JavaScript代码中绑定

在JavaScript代码中(即<script>标签内)绑定事件可以使JavaScript代码与HTML标签分离,文档结构清晰,便于管理和开发。

在JavaScript代码中绑定事件的语法为:
elementObject.onXXX=function(){
    // 事件处理代码
}

其中:

  • elementObject 为DOM对象,即DOM元素。
  • onXXX 为事件名称。

例如,为 id="demo" 的按钮绑定一个事件,显示它的 type 属性:

  1. <input id="demo" type="button" value="点击我,显示 type 属性" />
  2. <script type="text/javascript">
  3. document.getElementById("demo").onclick=function(){
  4. alert(this.getAttribute("type")); // this 指当前发生事件的HTML元素,这里是<div>标签
  5. }
  6. </script>

三. 绑定事件监听函

绑定事件的另一种方法是用 addEventListener() 或 attachEvent() 来绑定事件监听函数。

addEventListener()函数语法:
elementObject.addEventListener(eventName,handle,useCapture);

时间: 2024-08-03 03:20:37

javascript中常用的事件绑定方法的相关文章

JavaScript中常用的事件

转自:http://www.cnblogs.com/dtdxrk/p/3551454.html 作者:文刀日月 JavaScript中常用的事件 事件委托 可以给元素添加多个事件 var addHandler = function(element,type,handler){ if(element.addEventListener){ element.addEventListener(type,handler,false); //false表示冒泡阶段 }else if(element.atta

笔记-[6]-js中事件绑定方法的总结

js中的两种对象事件绑定方法: 1:常用的如:div.onclick=function(){...}; 2:通过系统方法绑定事件: 非IE:addEventListener('事件名[不加on]',function(){},false[或者true]) IE:attachEvent('事件名[加on]',function(){}); 通过系统方法绑定事件可以让对象可以绑定相同的事件并且执行不同的操作,如果使用第一种方法绑定多个相同的事件,最后一个事件会覆盖前面所有的事件. 在addEventLi

jQuery中的事件绑定方法

在jQuery中,事件绑定方法大致有四种:bind(),live(), delegate(),和on(). 那么在工作中应该如何选择呢?首先要了解四种方法的区别和各自的特点. 在了解这些之前,首先要知道,不管你用的是(live/ bind / delegate)之中那个方法,最终都是jQuery底层都是调用on方法来完成最终的事件绑定;.unbind(), .die(), .undelegate(),也是一样的都是通过.off()来实现的; 因此从某种角度来讲除了在书写的方便程度及习惯上挑选,不

javascript - 工作笔记 (事件绑定二)

在上篇中的事件绑定方法,相信大家都看到过了. 不过这里有点小小的问题,这些方法,变量都是全局的,难免会与其他的库或者方法发生冲突而被覆盖,因此,我在这里做了小小的封装,如下: JavaScript Code 12345678910111213141516171819202122232425262728293031323334353637383940   (function(window){         var Yx = function(){ }         Yx.evGuid = 0;

javascript - 工作笔记 (事件绑定)

背景: 目前所做的项目,只能使用的是原生的javascript.对于javascript的事件绑定想必大家都懂得语法: 1,在标签中使用属性调用方法:<div onclick="AAAA();"></div> 2,在javascript中对标签对象绑定数据: <div id="test"></div> var item = document.getElementById("test"); item.

jQuery事件绑定方法bind、 live、delegate和on的区别

我们试图绑定一些事件到DOM元素上的时候,我相信上面这4个方法是最常用的.而它们之间到底有什么不同呢?在什么场合下用什么方法是最有效的呢? 1.准备知识 当我们在开始的时候,有些知识是必须具备的: 1).DOM树 下图仅仅是一个示例,这是一个在browser环境下的一棵模拟DOM树,在下面的代码中仅起到演示的作用: 2).Event bubbling (aka event propagation)冒泡 我们的页面可以理解为一棵DOM树,当我们在叶子结点上做什么事情的时候(如click一个a元素)

javascript中常用坐标属性offset、scroll、client

原文:javascript中常用坐标属性offset.scroll.client 今天在学习js的时候觉得这个问题比较容易搞混,所以自己画了一个简单的图,并且用js控制台里面输出测试了下,便于理解. 1.在文档(document)对象里面用: scrollWidth/Height:获取对象的滚动宽度(滚动条可以滚动的宽度,相当于整个页面的总宽度的样子--网页正文全宽) scrollLeft/Top:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离(页面利用滚动条滚动到右边时,隐藏在

完美的jquery事件绑定方法on()

在讲on()方法之前,我们先讲讲在on()方法出现前的那些事件绑定方法: .live() jQuery 1.3新增的live()方法,用法如下: $("#info_table td").live("click",function(){/*显示更多信息*/}); 这里的.live()方法会把click事件绑定到$(document)对象,而且只需要给$(document)绑定一次,然后就能够处理后续动态加载的单元格的单击事件.在接收到任何事件时,$(document)

Javascript中call方法和apply方法用法和区别

第一次在博客园上面写博客,知识因为看书的时候发现了一些有意思的知识,顺便查了一下资料,就发到博客上来了,希望对大家有点帮助. 连续几天阅读<javascript高级程序设计>这本书了,逐渐发现了以前很多自己完全没有用过甚至见过的神奇知识点.今天在阅读到有关函数的属性和方法的时候,略感高级,于是乎,查阅了不少他人的博客,在此总结一下这两个方法的以下几个方面: 1.call()和apply()的作用和用法 2.什么时候用apply(),什么时候用call() 书上提到,每个函数都包含两个非继承而来