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试一下.今天来好 ...
随机推荐
- 编写可维护的JavaScript-随笔(七)
将配置数据从代码中分离出来 代码中有些数据有修改的可能,如果放在函数中的话后期修改的时候会带来一些不必要的风险 需要将配置数据从代码中抽取出来,如果配置数据多的话可以放入一个对象中,然后修改抽取出来的 ...
- 英特尔加速 Android 应用
下载地址 https://software.intel.com/zh-cn/android https://github.com/intel/haxm 解压目录 双击.exe,安装即可 检查SDK M ...
- SpringBoot+Jpa+SpringSecurity+Redis+Vue的前后端分离开源系统
项目简介: eladmin基于 Spring Boot 2.1.0 . Jpa. Spring Security.redis.Vue的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 ...
- mybatis 批量添加数据的两种实现方式
做开发的这几年期间经常遇到类似处理这种形式数据的问题,也遇到很多刚刚入行的新同学,发现他们做处理这块,经验不够,今天特地整理了一下,大家都会遇到的几种情况,代码也都粘贴出来了,拿去不谢,有时间大家还是 ...
- AttributeError: module 'tensorflow' has no attribute 'Session'
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_33440324/article/ ...
- (五)Kubernetes Pod状态和生命周期管理
什么是Pod Pod是kubernetes中你可以创建和部署的最小也是最简的单位.Pod代表着集群中运行的进程. Pod中封装着应用的容器(有的情况下是好几个容器),存储.独立的网络IP,管理容器如何 ...
- 类型转换的时候,.valueOf()和.parseX(),.Xvalue()的区别
.valueOf()返回的是包装类(Wrapper Class)中的一些类型:而.parseX()返回的是基本数据类型,如int,char,double等.其参数应该是String类型. .Xvalu ...
- TCP滑动窗口(发送窗口和接受窗口)
TCP窗口机制 TCP header中有一个Window Size字段,它其实是指接收端的窗口,即接收窗口.用来告知发送端自己所能接收的数据量,从而达到一部分流控的目的. 其实TCP在整个发送过程中, ...
- 证明StringBuffer线程安全,StringBuilder线程不安全
证明StringBuffer线程安全,StringBuilder线程不安全证明StringBuffer线程安全StringBuilder线程不安全测试思想测试代码结果源码分析测试思想分别用1000个线 ...
- 顶部选项卡-可左右拖动(webview)示例如何做到tab与webview联动滚动
顶部选项卡-可左右拖动(webview)的示例中,如何做到tab与webview联动滚动,效果类似uc头条一样 ps:自己也不确定有多少了到航头,页面怎么办,到航头从后台获取,页面不可能建N多个.ht ...