点击事件阻止缺省事件以及阻止冒泡

 1 function stopEvent(e){
 2     stopDefault(e);
 3     stopBubble(e);
 4 }
 5    //阻止缺省事件发生
 6 function stopDefault(e){
 7     if(e.preventDefault){
 8         e.preventDefault();
 9     }else{
10         e.returnValue=false;
11     }
12 }
13 //阻止冒泡发生
14 function stopBubble(e){
15     if(e.stopPropagation){
16         e.stopPropagation();
17     }else{
18         e.cancelBubble=true;
19     }
20 }

使用:    <div onclick="alert(‘div‘)" >    <a href="http://www.baidu.com" onclick="stopEvent(event)" >点我</a>   </div>
时间: 2024-11-05 15:47:05

点击事件阻止缺省事件以及阻止冒泡的相关文章

理解阻止浏览器默认事件和事件冒泡cancelBubble

一.阻止浏览器默认事件 1.先举个例子说什么是 浏览器的默认事件 : 比如有一个输入框,当我按下字母a,就会在输入框显示字母a.就是浏览器本该发生的事情.小孩子一出生就会汲取母乳一样的道理,这些都是先天,默认好的了. 2.看个demo,阻止浏览器默认的右键弹出菜单,而且弹出自己自定义的菜单.代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style type=&

JS——事件详情(默认行为、阻止默认行为的用法:return false等)

默认行为 1>默认行为 解释——也称作:默认事件.即不需要自己编写代码,浏览器自身所具备的一些功能 例如下图片所示: 在浏览器中单击右键,出现浏览器默认的菜单栏选项(这是最简单的默认行为) 2>阻止默认行为 案例1:屏蔽右键菜单(即消除上图所示的“浏览器右键出现菜单栏”事件) 代码如下所示: 注:oncontextmenu 事件:在元素中用户右击鼠标时触发并打开上下文菜单.并用return false(普通写法)来阻止默认行为[关于阻止默认行为,这篇文章可以好好阅读:http://caibao

五,事件对象、阻止浏览器默认动作、阻止事件冒泡

在jquery里边: $().bind(‘click’,function(evt){ evt.preventDefault(); evt.stopPropagation(); }); preventDefault()方法是jquery的方法,名字与js底层代码的名字一致而已. 并且其有做浏览器兼容处理(阻止浏览器默认行为) stopPropagation()方法是jquery的方法,名字与js底层代码的名字一致. 其有做浏览器兼容处理(阻止事件冒泡) 解析: $().bind(‘click’,f

DOM2级事件对象、添加事件、阻止默认事件、阻止冒泡事件、获取事件对象目标的兼容处理

事件对象——兼容处理 1 /* 2 * 功能: 事件对象兼容 3 * 参数: 表示常规浏览器的事件对象e 4 */ 5 function getEvent(e) { 6 7 // 如果存在e存在,直接返回,否则返回window.event 8 return e || window.event; 9 } 获取事件所对应的目标——兼容处理 1 /* 2 3 * 功能: 获取事件所对应的目标 4 5 * 参数: 表示常规浏览器的事件对象e 6 7 */ 8 9 function getTargetBy

js添加事件、移除事件、阻止冒泡、阻止浏览器默认行为等写法(兼容IE/FF/CHROME)

网上有关这方面的代码比较多而乱,这里整理一下并加以改进. 添加事件 var addEvent = function( obj, type, fn ) { if (obj.addEventListener) obj.addEventListener( type, fn, false ); else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj.attachEvent( "on"+type, function() {

文本框输入完毕后,点击Enter触发按钮Click事件

文本框输入完毕后,点击Enter触发按钮Click事件 在C#编程中,我们经常碰到一个问题,就是在文本框中输入一些文字后,点击某按钮做一些响应处理.如百度搜索那样的,填写搜索内容,点击百度即可.当然我这里也有相应的情况: 输入文字后,点击按钮触发翻转文字效果. 如果想要用按下Enter代替点击按钮,可以这样写: private void textBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) {

关于DIV 嵌套的时候,阻止祖辈的事件发生

例如: <div class="dvF"> <div class="dvC"> </div> </div> <script  link="jquery.min.js"></script> <script type="javascript/text"> $(function(){ $(".dvF").click(functio

RecyclerView点击事件与长按事件

最近开始使用RecyclerView了.RecyclerView很是强大,不过官方不提供点击事件. 在网上找了一下实现方法,有的说在adapter里添加回调接口来实现点击事件与长按事件. 不过经过测试,有时候会产生这样的现象:点击item跳转到下一个页面,再返回回来时, item的点击事件会失效.后来在Stack Overflow找到了新的方法. 原文链接如下:RecyclerView onClick.这里 贴上代码: public class RecyclerItemClickListener

jquery点击复选框触发事件给input赋值

体验效果:http://keleyi.com/keleyi/phtml/jqtexiao/31.htm 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>jquery点击复选框触发事件给input赋值-柯乐义</title><base target="_blank" /> <sty