一直听说jquery中事件函数返回false,相当于调用了event.preventDefault()和event.stopPropagation()两个方法,
今天就想看看dom中0级、1级、2级事件绑定事件的话,事件函数返回false会是个什么情况,看看是不是和jquery一个样;
<!doctype html>
<html>
<head>
<meta charset='utf-8' />
<script>
function a(){
console.log("body");
}
function b(event){
console.log("div");
return false;
}
</script>
</head>
<body onclick='a();'>
<a style='width:200px;height:200px;background:red;display:block;' href='http://www.baidu.com' onclick='return b();'>aaaa</a>
</body>
</html>
运行之后发现打印div和body,但是不会跳转到百度,所以0级dom事件的return false只是阻止了默认事件,和jquery 的不同
再来看看1级dom事件
<!doctype html>
<html>
<head>
<meta charset='utf-8' />
<script>
function a(){
console.log("body");
}
function b(event){
console.log("div");
return false;
}
function load(){
document.body.onclick = a;
document.getElementsByTagName("a")[0].onclick = b;
}
</script>
</head>
<body onload='load();'>
<a style='width:200px;height:200px;background:red;display:block;' href='http://www.baidu.com'>aaaa</a>
</body>
</html>
运行之后发现打印div和body,但是不会跳转到百度,所以1级dom事件的0级dom事件函数中的return false含义一样,只是阻止了默认事件,和jquery 的不同
再来看看2级dom事件
<!doctype html>
<html>
<head>
<meta charset='utf-8' />
<script>
function a(){
console.log("body");
}
function b(event){
console.log("div");
return false;
}
function load(){
document.body.addEventListener("click",a,false);
document.getElementsByTagName("a")[0].addEventListener("click",b,false);
}
</script>
</head>
<body onload='load();'>
<a style='width:200px;height:200px;background:red;display:block;' href='http://www.baidu.com'>aaaa</a>
</body>
</html>
运行之后发现打印div和body,并且会跳转到百度,所以
2级dom事件函数中的return false什么事情也没做,和jquery不同
网页题目:jquery事件函数和原生事件绑定函数中returnfalse的区别-创新互联
网站网址:https://www.cdcxhl.com/article16/csgsgg.html
成都网站建设公司_创新互联,为您提供ChatGPT、自适应网站、外贸建站、企业建站、Google、域名注册
广告
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联