在触发DOM上的某个事件时,会产生一个事件对象event。这个对象中包含着所有与事件有关的信息。
包括导致事件的元素,事件的类型以及其他与特定事件相关的信息。
<body>
<a href="http://www.baidu.com">baidu</a>
<div class="box">
我是div
<div class="son">son</div>
</div> <script>
var box = document.querySelector('.box');
// 事件对象的兼容写法var e = e || window.event; // 或var e = e || event
box.onclick = function(e) { // e是形参
var e = e || window.event; // 或var e = e || event
// event是事件对象 ie6-8通过window.event来获取事件对象
console.log(e); // window.event
console.log(e.target);// 触发事件的元素 var target = e.target || e.srcElement
console.log(this); // 绑定事件的对象
} // box.onmouseover = fn;
// box.onmouseout = fn; function fn(e) {
var e = e || window.event;
console.log(e.type); }
// 阻止浏览器的默认行为 比如链接跳转 e.preventDefault()或return false;
var a = document.querySelector('a');
a.onclick = function(e) {
var e = e || window.event;
console.log('hello');
// 阻止浏览器的默认行为 比如链接跳转 ie6-8 returnValue属性 e.returnValue
//e.preventDefault();
return false; // 也可以阻止默认行为 且没有兼容性问题
}
</script>
</body>


event常用属性:
1.event.type;——获取绑定的事件类型,比如click,mouseover等
2.event.target;(在ie低版本中用event.srcElement)——返回触发事件的元素。
比如[object HTMLInputElement]指的是html里的input元素
3.event.stopPropagation()[ˌprɒpə'ɡeɪʃn];(在ie中用oEvent.cancelBubble=false)//用于阻止事件冒泡
4.event.stopImmediatePropagation();//Immediate[ɪˈmi:diət] //当一个元素绑定多个事件处理程序的时候,
事件会按照顺序全部执行,如果不想让后面的事件处理程序执行,就在当前事件里加这个方法,
就不执行后面的事件处理程序了。
5.event.preventDefault();(在ie低版本中用oEvent.returnValue=true)
//阻止事件的默认行为,比如阻止a的href链接。
 
 

最新文章

  1. TCP进制转换
  2. Processing与Java混编初探
  3. Servlet 添加购物车
  4. Spring学习6-Spring整合Struts2
  5. FreeBSD基金会添加新成员,梁莉成为第一位来自微软和中国的基金会董事
  6. 为什么每个请求都要有用户名密码呢,那不是每次都要查询一下了,token,表示这个用户已经验证通过了,在token有效期内,只需要判断token是否有效就可以了
  7. WordPress Pie Register插件‘wp-login.php’多个跨站脚本漏洞
  8. 用cocos2d-x 3.2 实现的FlappyBird
  9. 基于OpenStreetMap计算驾车距离(Java)
  10. CodeSmith如何生成实体类
  11. C# Excel导入数据
  12. MyBatis配置C3P0连接池
  13. Jmeter监控服务器笔记
  14. BZOJ 1054: [HAOI2008]移动玩具(bfs)
  15. C# 自定义类型转换
  16. Space Ant(极角排序)
  17. css 自定义滚动条
  18. MariaDB数据库服务
  19. Linux SPI总线和设备驱动架构之二:SPI通用接口层
  20. JAVA对象创建的过程

热门文章

  1. leetcode 78. 子集(c++)
  2. DHCP原理
  3. windows10上使用一个tomcat部署2个项目
  4. MD5加密 及 防止重复提交
  5. 【ABAP系列】SAP ABAP模块-memory内存数据传输的例子
  6. 2019/10/27 TZOJ
  7. 利用正则表达式模拟计算器进行字符串的计算实现eval()内置函数功能
  8. python数据类型补充
  9. ASP精华[转]
  10. java中高级开发知识准备要点