return、reutrn false、e.preventDefault、e.stopPropagation、e.stopImmediatePropagation的区别
return
var i = function(){
return
}
console.log(i())//undefined
return的主要作用是阻止函数继续执行,直接返回undefined
return false
<a class="baidu" href="http://www.baidu.com">百度</a>
$('.baidu').on('click',function(e){
console.log(1)
return false
})//1
并未跳转页面,当每次调用return false时,实际做了3件事情
1.event.preventDefault();
2.event.stopPropagation();
3.停止回调函数执行并立即返回
e.preventDefault
$('.baidu').on('click',function(e){
console.log(1)
e.preventDefault()
})//1
e.preventDefault()方法用来阻止浏览器继续执行默认行为,这里阻止了页面的跳转
e.stopPropagation
<div class="btn"><a class="baidu" href="http://www.baidu.com">百度</a></div>
$('.btn').on('click', function () {
console.log(520)
})
$('.btn .baidu').on('click', function (e) {
console.log(1)
e.preventDefault()
e.stopPropagation()
})
输出结果为1
e.stopPropagation阻止事件冒泡
e.stopImmediatePropagation
$('.btn .baidu').on('click',function(e){
console.log(1)
e.preventDefault()
})
$('.btn .baidu').on('click',function(e){
console.log(2)
e.preventDefault()
e.stopImmediatePropagation()
})
$('.btn .baidu').on('click',function(e){
e.preventDefault()
console.log(3)
})
$('.btn').on('click',function(e){
e.preventDefault()
console.log(4)
})
点击输出结果为1,2
e.stopImmediatePropagation()会停止一个事件继续执行,即使当前的对象上还绑定了其他处理函数,所有绑定在一个对象上的事件会按照绑定顺序执行
综上所述
return阻止函数继续执行,返回undefined
return false有三个作用,阻止浏览器默认行为,阻止事件冒泡,停止回调函数执行并立即返回
event.preventDefault阻止浏览器默认行为
event.stopPropagation阻止事件冒泡
event.stopImmediatePropagation停止一个事件继续执行,即使当前的对象上还绑定了其他处理函数,所有绑定在一个对象上的事件会按照绑定顺序执行
return、reutrn false、e.preventDefault、e.stopPropagation、e.stopImmediatePropagation的区别的更多相关文章
- jQuery中的 return false, e.preventDefault(), e.stopPropagation()的区别
e.stopPropagation()阻止事件冒泡 <html><head> <title></title> <script sr ...
- jQuery js 中return false,e.preventDefault(),e.stopPropagation()的区别(事件冒泡)
有时候遇到冒泡事件很烦人,真的..... 1.e.stopPropagation()阻止事件冒泡 <head> <title></title> <script ...
- jQuery中return false,e.preventDefault(),e.stopPropagation()的区别
e.stopPropagation()阻止事件冒泡 <head> <title></title> <script src="Scripts/jQue ...
- preventDefault()、stopPropagation()、return false 之间的区别
“return false”之所以被误用的如此厉害,是因为它看起来像是完成了我们交给它的工作,浏览器不会再将我们重定向到href中的链接,表单也不会被继续提交,但这么做到底有什么不对呢? 可能在你刚开 ...
- js中的preventDefault与stopPropagation详解
本篇文章主要是对js中的preventDefault与stopPropagation进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 首先讲解一下js中preventDefault和stopP ...
- js中的preventDefault和stopPropagation
首先讲解一下js中preventDefault和stopPropagation两个方法的区别: preventDefault方法的起什么作用呢?我们知道比如<a href=" ...
- javascript中间preventDefault与stopPropagation角色介绍
preventDefault的作用是什么方法,它? 我们知道,例如,<a href="http://www.baidu.com">百度</a>,这是html ...
- 深入了解preventDefault与stopPropagation
event.preventDefault()用法介绍(阻止默认事件) 该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作).例如,如果 type 属性是 "subm ...
- preventDefault 和 stopPropagation
概述 以前开发项目的时候,总是分不清楚 preventDefault 和 stopPropagation,每次都是用 @click.stop试一下,不能就用@click.prevent试一下.今天来好 ...
随机推荐
- AngularJS 菜鸟
AngualrJS是 JavaScript框架. <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/ang ...
- YUV详解
YUV格式解析2 又确认了一下H264的视频格式——H264支持4:2:0的连续或隔行视频的编码和解码 YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法(属于PAL).YUV主要用 ...
- 分页查询——Hibernate Criteria实现一次查询取得总记录数和分页后结果集
使用Hibernate criteria进行分页查询时,如何实现一次查询取得总记录数和分页后结果集 - bto310 - ITeye博客 https://bto310.iteye.com/blog/1 ...
- crontab定时任务不执行,单独运行sh生效
虽然已经从事运维两三年了. 但是今天写的计划任务没有执行,排除了下, 这里整理下,方便后期查看. 排除思路 1. 确保crond服务是开机自启和当前是启动的. # centos systemctl s ...
- Docker搭建Redis
1.拉取redis镜像: docker pull redis 2.创建容器: docker run -d --restart=always -v /opt/redis/data:/data --nam ...
- Windows & Ubuntu 双系统完美卸载Ubuntu(不残留,无污染)
双系统卸载Ubuntu时,如若直接从Windows磁盘管理里格式化Ubuntu分区,由于Ubuntu的引导盘的原因,会导致电脑启动时出现问题,所以不建议这样的操作. 卸载Ubuntu前需要区分BIOS ...
- laravel5.1框架基础之Blade模板继承简单使用方法分析
本文实例讲述了laravel5.1框架基础之Blade模板继承简单使用方法.分享给大家供大家参考,具体如下: 模板继承什么用? 自然是增强基础页面的复用,有利于页面文档的条理,也便于更改多处使用的内容 ...
- spring security 学习资料
spring security 学习资料 网址 Spring Security 文档参考手册中文版 https://springcloud.cc/spring-security.html
- Gym100739H Hard Molecules
Hard Molecules 给定一个连通图中每个点的度数,求一个满足条件的图,图可以有重边,不能有自环. n<=5000, di<=109 题解 如果不要求图连通,那么只需要判断 \[ ...
- C++对象内存模型2 (虚函数,虚指针,虚函数表)(转)
class A { public: virtual void vfunc1(); virtual void vfunc2(); void func1(); void func2(); virtual ...