700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > js阻止事件追加的具体实现【javascript】

js阻止事件追加的具体实现【javascript】

时间:2020-03-05 01:17:16

相关推荐

js阻止事件追加的具体实现【javascript】

web前端|js教程

事件追加

web前端-js教程

有些时候可以使用 e.stopPropagation(); e.preventDefault();来阻止事件冒泡,和默认事件的执行。但不能阻止事件的追加。

visual c 源码,c语言vscode怎么建项目,ubuntu 查看 温度,内置tomcat配置缓存,迅雷 补丁 sqlite,新手网页设计软件好,架设php服务器,前端上传文件插件,前端框架和ui框架,爬虫弹窗关闭,php输出日志,精准seo,springboot2拦截,网站栏目框架,网页用户登录注册模版,淘宝智能版电脑模板下载,dede织梦后台,支付页面js,手机上网管理系统,java小程序实例下载lzw

什么情况下要阻止事件的追加呢?

java微信扫码支付源码,vscode前端快捷键,ubuntu pil安装,tomcat 编辑器,电动爬虫制作,php数据展示,快手抖音Seo优化排名,自动采集别人的网站,软件 网站模板下载lzw

比如:

卡娃微卡魔力相册源码,vscode设置输出窗口,ubuntu 声音没了,tomcat清缓存重启,虚拟机sqlite数据库,爬虫境界,php动态函数,专业的seo优化网络,祛痘网站模板,access模板lzw

点击“结账”,这样的操作时,结账本身有自己的事件,但结账前要判断是否登录。

我们可能会这样写:

Js代码

if(isLogin){ //判断是否登录

console.log("没有登录")

}else{

//结账相关代码

}

如果点击“我的主页”也有登录判断

登录判断代码

if(isLogin){ //判断是否登录

console.log("没有登录")

}else{

//个人中心

}

如果还有更多的登录判断。是不是就会有更多像上面的代码呢?后来我发现stopImmediatePropagation()这个方法, 阻止事件追加。上面的问题就不是问题了。

重要:.确保登录判断事件是第一个绑定的事件。

Demo代码

demo

结账

加入收藏夹

他人支付

加入购入车

我的主页

//最先绑定

$(".isLogin").on("click", function (e) {

if(true){ //登录判断

alert("没有登录");

e.stopImmediatePropagation();

}

return false;

});

$(".bill").on("click",function(){

alert("结账相关内容!");

});

$(".a1").on("click",function(){

alert("a1");

});

$(".a2").on("click",function(){

alert("a2");

});

$(".a3").on("click",function(){

alert("已加入购物车");

});

$(".a4").on("click",function(){

alert("有登录判断");

});

其实,jquery给我们提供了查看事件的方法$._data($(‘.isLogin’).get(0)),打开firebug,在控制台输入。

Js代码

$._data($(‘.isLogin’).get(0))

会看到如下:

Js代码

Object { events={…}, handle=function()}

点击可以看到事件数组,方便查看元素上绑定了什么样的事件。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。