JavaScript 阻止默认时间和冒泡时间
2016-05-10 23:35
253 查看
<!DOCTYPE HTML>
<html>
<head>
<title>event cancel</title>
</head>
<body>
<a href="https://www.baidu.com/">baidu</a>
<div style="width: 400px; height: 300px; background: red;" id="d1">
<div style="width: 250px; height: 250px; background: yellow;" id="d2">
<button id="btn1">click me</button>
</div>
</div>
</body>
</html>
<script type="text/javascript" >
document.getElementsByTagName("a")[0].onclick = function(e){
cancelHandler(e); //取消a标签打开连接的事件, 然后执行click事件
alert("cancel the default event!");
}
function cancelHandler (event) {
var event = event || window.event; // for ie
//取消事件相关的默认行为
if(event.preventDefault) event.preventDefault(); //标准技术
if(event.returnValue) event.returnValue = false;
return false; //用于处理对象属性注册的处理程序。
}
//测试冒泡时间
document.getElementById("d1").onclick = function () {
alert("d1 clicked");
}
document.getElementById("d2").onclick = function () {
alert("d2 clicked"); //点击d2会触发两次点击时间, 一次是d2自己的, 第二次是父亲d1的
}
document.getElementById("btn1").onclick = function (e) {
e.stopPropagation(); //阻止向上冒泡
alert("button clicked");
}
</script>
<html>
<head>
<title>event cancel</title>
</head>
<body>
<a href="https://www.baidu.com/">baidu</a>
<div style="width: 400px; height: 300px; background: red;" id="d1">
<div style="width: 250px; height: 250px; background: yellow;" id="d2">
<button id="btn1">click me</button>
</div>
</div>
</body>
</html>
<script type="text/javascript" >
document.getElementsByTagName("a")[0].onclick = function(e){
cancelHandler(e); //取消a标签打开连接的事件, 然后执行click事件
alert("cancel the default event!");
}
function cancelHandler (event) {
var event = event || window.event; // for ie
//取消事件相关的默认行为
if(event.preventDefault) event.preventDefault(); //标准技术
if(event.returnValue) event.returnValue = false;
return false; //用于处理对象属性注册的处理程序。
}
//测试冒泡时间
document.getElementById("d1").onclick = function () {
alert("d1 clicked");
}
document.getElementById("d2").onclick = function () {
alert("d2 clicked"); //点击d2会触发两次点击时间, 一次是d2自己的, 第二次是父亲d1的
}
document.getElementById("btn1").onclick = function (e) {
e.stopPropagation(); //阻止向上冒泡
alert("button clicked");
}
</script>
相关文章推荐
- 淡扯javascript编程思想
- 分享一些前端开发中最常用的JS代码片段
- Servlet/JSP-01 Servlet及其生命周期
- js对象根据属性名表达式解析成新的对象
- WebBasic08-JS
- jsp page指令 九个内置对象 四种属性范围 两种跳转的区别
- 《高性能javascript》 领悟随笔之-------DOM编程篇二
- JS获取html页面上选中内容
- JSP属性范围
- js检测输入的是否全部为数字
- JavaScript学习第四天
- 关于JSON
- Javascript高性能动画与页面渲染
- C#使用LitJson解析JSON(转)
- JavaScript:Date类型全面解析
- Maven JSP 标签
- JS小菜之作用域
- JSP(二)
- JSP
- js中去除空格