事件冒泡,可能有些同学还不是很清楚,什么是事件冒泡?来看个简单例子。
点击我
点击“点击我”,会依次弹出:最里层---->中间层---->最外层---->然后跳转链接,这就是事件冒泡,下面来看看如何解决这个问题
JavaScript解决事件冒泡
event.stopPropagation()
$(function() {
$("#ahref").click(function(event) {
event.stopPropagation();
});
});
再点击“点击我”,会弹出:最里层---->然后跳转链接
return false;
$(function() {
$("#ahref").click(function(event) {
return false;
});
});
再点击“点击我”,会弹出:最里层,但不会跳转链接
event.preventDefault()
$(function() {
$("#ahref").click(function(event) {
event.preventDefault()
});
});
点击“点击我”,依次弹出:最里层---->中间层---->最外层,但最后没有跳转链接
由此可以看出
event.stopPropagation() 事件处理过程中,阻止了事件冒泡,但不会阻击默认行为(它就执行了超链接的跳转)
return false 事件处理过程中,阻止了事件冒泡,也阻止了默认行为(比如刚才它就没有执行超链接的跳转)
event.preventDefault() 事件处理过程中,不阻击事件冒泡,但阻击默认行为(它只执行所有弹框,却没有执行超链接跳转)
Vue解决事件冒泡
Vue.js为v-on提供了 事件修饰符,我们只需要添加click.stop即可防止事件冒泡
编辑
确定
vue事件修饰符
.stop
.prevent
.capture
.self
.once
...
...
提示:使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用 @click.prevent.self 会阻止所有的点击,而 @click.self.prevent 只会阻止元素上的点击。
小程序解决事件冒泡
bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。
你遇到的前端面试题都有什么?
随着春节的结束,各个行业也普遍开始了上班的节奏,不过本人17号才上班。为什么?因为长得帅的都上班比较晚。当然,每到新年结束,又迎来了一批招聘者与面试者,我来说说作为一年工作经验应该知道的面试题。
🎈HTML篇
1.doctype是什么?有哪些类型?
2.input有哪些新类型?简要说明其8用法。
3.HTML5有哪些新特性,移除了哪些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?
4.bootstrap响应式的原理是什么?
5.多移动终端页面适配是如何实现的?
🎈CSS篇
1.如何实现两列布局,左边自适应,右边固定宽度?
2.用CSS画一个三角形
3.CSS实现字体大写
4.display有哪些常用的属性值?分别是什么意思?
5.position为absolute,relative,fixed的定点位置
6.用三种方法清除浮动
7.请介绍一下margin塌陷问题
🎈js篇
1.什么是事件冒泡和捕获?如何阻止事件冒泡?(分别用原生和jquery实现)
2.js创建对象,至少使用三种方法
3.简述一下事件穿透以及解决办法
4.用三种方式判断变量类型是否是数组
5.如何实现对象的拷贝?
6.什么是闭包?闭包的优缺点。
7.简述一下ajax请求的过程。
8.简述一下new一个人构造函数的人过程。
9.为什么会有跨域?是怎么解决跨域问题的?简述一下原理。
10.js原始数据类型有哪些?
11.学一个函数,判断一个变量是否是字符串
12.typeof有哪些结果?
13.剪头函数和普通函数有什么区别?
14.请用三种方法实现数组去重
15.href和src有什么区别?
🎈jquery篇
1.attr()和prop()有什么区别?
2.on和bind有什么区别?js动态添加的dom元素是通过on还是bind?
3.touch和click有什么区别?
4.window.onload和jquery的ready有什么区别?
🎈vue篇
1.简述一下vue的生命周期及其特点
2.vue双向绑定的原理是什么?
3.vue的特点有哪些?和jquery有什么区别?
4.父子组件之间传递数据的方法
5.子组件如何共享数据?
6.一般有什么工具进行数据交互?
7.webpack的原理是什么?
8.简述一下$nextTick的用法
🎈浏览器篇
1.cookie、sessionStorage、localStorage的区别是什么?
2.有用过浏览器缓存吗?简述一下基本的缓存机制
🎈网络篇
1.http和https之间的区别
2.从服务器的安全考虑,是使用get请求还是post请求?
3.URL请求的过程有哪些?
🎈项目经验篇
1.项目中遇到的最大挑战以及解决办法
2.常见的网页优化有哪些?
作为一个面试一年以内工作经验的前端程序员来说,以上的问题能够倒答如流月薪6k应该不成问题啦。这些面试题也是我在很多面试中感觉经常被问到的题目。
希望大家年后找工作能够顺顺利利,千万不要跟我一样哦,只有帅气就一无所有了。
大家好,我是王小编,中国最帅的前端程序员。
如何阻止Js冒泡事件?
1.event.stopPropagation();
事件处理过程中,阻止了事件冒泡,但不会阻击默认行为(
$(function() {
$("#aa").click(function(event) {
event.stopPropagation();
});
});
2.return false;
事件处理过程中,阻止了事件冒泡,也阻止了默认行为
$(function() {
$("#aa").click(function(event) {
return false;
});
});