以下是为您整理出来关于【事件冒泡】合集内容,如果觉得还不错,请帮忙转发推荐。
cancelBubble在IE下有效 stopPropagation在Firefox下有效 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312"> <head> <title> 阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)</title> <meta name="keywords" content="JavaScript,事件冒泡,cancelBubble,stop...
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
然而,在今天一些大型的WEB交互项目中,比如大型的WebGame项目,JavaScript事件冒泡影响是值得重视的。本文通过一个简单的例子来讲解JavaScript事件冒泡及使用注意事项。 如果你对JavaScript事件冒泡还没有什么印象,不妨先看看我之前写的一篇博客《JavaScript事件冒泡简介及应用》。本文讲究实用,不在对JavaScript事件冒泡基础知识进行过多的阐述。 在文章开始之前,现在先看看下面这样一个需求:下面HTML假设描述的是一个WebGam...
一、什么是事件冒泡 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。 打个比方说:你在地方法院要上诉一件案子,如果地方没有处理...
JS中的事件冒泡 tablebody->document->window,当用event.cancelBubble=true的时候就说明阻止该冒泡行为 event.cancelBubble=true; } // 目的当点击BBB的时候弹出TR,当点击AAA的时候弹出TD AAA BBB [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
1. 如何阻止事件冒泡 代码如下://非IE if (event && event.stopPropagation) event.stopPropagation(); else//IE window.event.cancelBubble = true; 2.获取控件ID 代码如下:if (document.all) { //IE alert(event.srcElement.tagName+":"+event.srcElement.id); } else { //Firefox alert(event.target.tagName + ":" + event.target.id); }
(1)冒泡型事件:事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发。 IE 5.5: div -> body -> document IE 6.0: div -> body -> html -> document Mozilla 1.0: div -> body -> html -> document -> window (2)捕获型事件(event capturing):事件从最不精确的对象(document 对象)开始触发,然后到最精确(也可以在窗口级别捕获事件,不过必须由开发人员特别指定)。 (3)DOM事件流:同时支持两种事...
下面是html代码部分:代码如下:<body><div id="content"> 外层div元素 <span>内层span元素</span> 外层div元素</div> <div id="msg"></div></body> 对应的jQuery代码如下:代码如下:<script type="text/javascript">$(function(){ // 为span元素绑定click事件 $(span).bind("click",function(){ var txt = $(#msg).html() + "<p>内层span元素被点击.<p/>";//获取html信息 $(#msg).html(txt);// 设置h...
代码如下:function stopBubble(e) { //如果传入了对象,那么就是非IE浏览器,才用W3C标准方法 if (e || e.stopPropagation) { e.stopPropagation(); } else { //才用IE的停止事件冒泡的方法 window.event.CancelBubble = true; } }
网上的例子用的是$(".b").live("click",function(event){} ,jquery自动对live做了处理,阻止了事件冒泡。改成bind,实验就能通过。 代码如下:< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</tit...