大家好!今天让小编来大家介绍下关于js恢复事件冒泡(请教关于JS的事件冒泡和事件捕获的问题)的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
文章目录列表:
在AndroidManifest.xml中加入访问SDCard的权限如下:《!-- 在SDCard中创建与删除文件权限 --》《uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/》JAVASCRIPT中什么是捕捉事件和冒泡事件,不能说“用了addEventListener和attachEvent方法触发事件冒泡”,以及怎么解决js 中事件冒泡和事件捕获,会冒泡给最外层的元素并由它来捕获和处理,本文目录请教关于JS的事件冒泡和事件捕获的问题js 中事件冒泡和事件捕获,而不是说“用了什么方法才会触发事件冒泡”,所有被冒泡的元素都会自动捕获这个事件,js 中事件冒泡和事件捕获。
本文目录
请教关于JS的事件冒泡和事件捕获的问题
首先要纠正你对事件冒泡的错误认识:默认情况下只要是鼠标事件都会产生冒泡(也就是把事件逐级上报给上级元素,直到页面的顶级元素document),而不是说“用了什么方法才会触发事件冒泡”。同样,所有被冒泡的元素都会自动捕获这个事件,不需要什么特殊的方法,只要添加事件处理过程即可。addEventListener和attachEvent用于绑定事件处理程序,与事件冒泡没有必然联系,不能说“用了addEventListener和attachEvent方法触发事件冒泡”。
请看下面这个简单例子,或许能让你加深理解:
《script》function test(e){ var t=(e||window.event).target; if(t&&t.id&&t.id=="me"){ alert(t.innerHTML); }}《/script》《div onclick="test();"》 《div》 《div》 《div》...我是打酱油的《/div》 《div id="me"》...我是主角,点我!!!《/div》 《div》...我是来看热闹的《/div》 《/div》 《div》..我是工作人员《/div》 《/div》 《div》.我负责发盒饭《/div》《/div》
最底层的元素点击事件,会冒泡给最外层的元素并由它来捕获和处理。所以从形式上来看事件冒泡与普通的事件绑定是差不多的,只是绑定的对象不同而已。利用事件冒泡(或者说事件委托)的优势在于可以只用一个事件处理过程就能捕获所有子元素的事件,这对于动态添加的子元素好处更大,因为他们不需要动态绑定事件了。
js 中事件冒泡和事件捕获,以及怎么解决
js 中事件冒泡和事件捕获,以及怎么解决创建SDCard可以在Eclipse创建模拟器时随同创建,也可以使用DOS命令进行创建,如下: 在Dos窗口中进入android SDK安装路径的tools目录,输入以下命令创建一张容量为2G的SDCard,文件后缀可以随便取,建议使用.img: mksdcard 2048M D:\AndroidTool\sdcard.img 在程序中访问SDCard,你需要申请访问SDCard的权限。 在AndroidManifest.xml中加入访问SDCard的权限如下:《!-- 在SDCard中创建与删除文件权限 --》《uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/》
JAVASCRIPT中什么是捕捉事件和冒泡事件,请通俗(用代码)举例说明,怎样判断区别它们编程时如何使用
JS里面事件捕捉是在指定的事件发生时,给出处理的方法,比如说鼠标点击,移动等等,事件冒泡是指对象嵌套时,底层事件处理完以后是否向上层对象传递,比如说两个DIV嵌套,内层DIV的onclick事件发生后,如果允许冒泡,那么外层的onclick事件也会被响应,反之则不会,举个很简单的例子《script type="text/javascript"》function clickouterdiv1(){ alert("outerdiv clicked");}function clickinnerdiv1(){ alert("innererdiv clicked");}function clickouterdiv2(){ alert("outerdiv clicked");}function clickinnerdiv2(){ alert("innererdiv clicked"); event.cancelBubble = true;}《/script》《div style="width:200px;height:200px;border:1 solid red;left:0px;top:0px;position:absolute;" onclick="clickouterdiv1();"》《div style="width:180px;height:180px;border:1 solid blue;left:10px;top:10px;position:absolute;" onclick="clickinnerdiv1();"》《/div》《/div》《div style="width:200px;height:200px;border:1 solid red;left:0px;top:250px;position:absolute;" onclick="clickouterdiv2();"》《div style="width:180px;height:180px;border:1 solid green;left:10px;top:10px;position:absolute;" onclick="clickinnerdiv2();"》《/div》《/div》上面的两个框:点内外框之间,只有外框提示,点击内框,内外框都有提示,说明点内框的事件冒泡到了外框,两个事件被触发 下面的两个框:点内外框之间,只有外框提示,点击内框,只有内框都有提示,说明点内框的事件没有冒泡到外框,只有一个事件被触发 阻止事件向上层冒泡,在事件处理方法里面加上event.cancelBubble=true;就可以了,恢复冒泡,加上event.cancelBubble=false;如果不写,默认是冒泡
以上就是小编对于js恢复事件冒泡(请教关于JS的事件冒泡和事件捕获的问题)问题和相关问题的解答了,js恢复事件冒泡(请教关于JS的事件冒泡和事件捕获的问题)的问题希望对你有用!