1、在浏览器中,大多数代码都是由事件驱动的(event-driven)。

这和生物中的神经反射有点类似。

比如说,谷歌页面上的一个按钮,

当我们“按下”这个按钮的时候,将跳出如下界面。

那么你有没想过,这个过程是怎么发生的呢?

很显然,在我们按下按钮的时候,一定是有“某一段代码“被调用。

这个“某一段代码“就是我们通常所说的“回调函数”(callback)

2、那么如何自己来实现一个这样的功能呢?

很自然的可以想到,既然要对一个特定的事件做出响应,我们需要知道的事情是

  • “特定的事情发生了没有?”。
  • “我该如何响应?”

可以很容易想到类似下面的一段伪代码:

        event.addListener();
if (event_happened) {
run_some_codes();
}

翻译成JavaScript代码,如下所示

我们需要监听特定的DOM元素,当发生特定的事情的时候就调用“回调函数”,完成响应。

写其它东西的响应也是类似的,按上述套路实现就好了

3、以下是“回调函数”的参数event的一些属性

target指的是监听的那个DOM对象。

内容来自:http://htmldog.com/guides/javascript/intermediate/events/

最新文章

  1. javascript学习笔记一
  2. overflow:hidden与margin:0 auto之间的冲突
  3. C# 读本地INI文件方法
  4. Console命令详解,让调试js代码变得更简单
  5. DIY FSK RFID Reader
  6. C语言 百炼成钢18
  7. Linux 编程中的API函数和系统调用的关系【转】
  8. u盘在电脑读不出来,但别的可以读,别的u盘在我电脑又可以识别怎么回事?
  9. Httpservlet cannot be resolved to a type的原因与解决方法
  10. spring PropertyPlaceholderConfigurer 找不到配置文件原因
  11. Team Homework #3
  12. WCF入门(三)---WCF与Web服务/Web Service
  13. UVa 12169 (枚举+扩展欧几里得) Disgruntled Judge
  14. mac 用 brew
  15. struts2 拦截器1
  16. Sumsets(POJ 2229 DP)
  17. Beanstalkd
  18. 状态开关按钮(ToggleButton)与开关(Switch)的功能与用法
  19. 微信小程序怎么用?线下商家最适合玩小程序
  20. java并发编程的艺术——第五章总结(Lock锁与队列同步器)

热门文章

  1. 一个基于 EasyUI 的前台架构(3)封装操作Tabs的JS代码
  2. python django -2 ORM模型
  3. tinycore Network card configuration during exec bootlocal.sh
  4. JAVA的protected权限
  5. JavaScript入门:004—JS凝视的写法和基本运算符
  6. js与jquery实时监听输入框值的oninput与onpropertychange方法
  7. 这样就能用MathType编辑^符号
  8. java中訪问修饰符
  9. 【BZOJ2320】最多重复子串 调和级数+hash
  10. 《从零开始学Swift》学习笔记(Day 34)——静态属性是怎么回事?