点击事件排除父级标签,这里使用的是stopPropagation()方法。event.stopPropagation();

对了,这里还用了解除click事件,unbind。

下面这篇博文,介绍挺全的

http://www.cnblogs.com/zhangq723/archive/2011/04/02/2003358.html

把文章拷贝了一下,在这个折叠中。

移除事件

    unbind(type [,data])     //data是要移除的函数

    $('#btn').unbind("click"); //移除click

    $('#btn').unbind(); //移除所有
对于只需要触发一次的,随后就要立即解除绑定的情况,用one() $('#btn').one("click",function(){.......});
模拟操作 可以用trigger()方法完成模拟操作。 $('#btn').trigger("click");
$('#btn').click(); 触发自定义事件 $('#btn').bind("myclick",function(){....}); $('#btn').trigger("myclick");
传递数据 trigger(type [,data]) $('#btn').bind("myclick",function(event,message1,message2){...........}); $('#btn').trigger("myclick",["传给message1","传给message2"]); 执行默认操作
$("input").trigger("focus"); //不仅会触发input元素绑定的focus事件,还会触发默认操作——得到焦点。 $("input").triggerHandler("focus"); //只触发绑定事件,不执行浏览器默认操作 其他用法 绑定多个事件类型 $("div").bind("mouseover mouseout",function(){.....}); 添加事件命名空间 $("div").bind("click.plugin",function(){......}); 在所绑定的世界类型后面添加命名空间,这样在删除事件时只需要指定命名空间即可。 $("div").unbind(".plugin"); //删除空间内的事件 $("div").trigger("click!"); //触发所以不包含在命名空间中的click方法 如果包含在命名空间的也要触发: $("div").trigger("click");

绑定相关

stopPropagation() 方法介绍:

定义和用法

不再派发事件。

终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点。

语法

event.stopPropagation()

说明

该方法将停止事件的传播,阻止它被分派到其他 Document 节点。在事件传播的任何阶段都可以调用它。注意,虽然该方法不能阻止同一个 Document 节点上的其他事件句柄被调用,但是它可以阻止把事件分派到其他节点。

 //一级类别点击设置
function setFirstClick() {
var fa = $('.first-sort .a');
fa.unbind(); //移除所有
fa.each(function (i) {
$(fa[i]).click(function () {
alert(1)
});
});
} //二级类别点击设置
function setSecondClick() {
var fb = $('.first-sort .a.select .second-sort .b');
fb.unbind(); //移除所有
fb.each(function (i) {
$(fb[i]).click(function (event) {
alert(2);
event.stopPropagation();
});
});
} //三级类别点击设置
function setThirdClick() {
var fc = $('.first-sort .a.select .second-sort .b.select .third-sort .c');
fc.unbind(); //移除所有
fc.each(function (i) {
$(fc[i]).click(function (event) {
alert(3);
event.stopPropagation();
});
});
}

点击事件排除父级标签

JS - 点击事件排除父级标签的更多相关文章

  1. js点击事件防止用户重复点击执行

    点击事件里给button标签加一个自定义属性,存上次点击时间 追问: 求详细代码,JS 真心的没怎么做过 追答:   <input type="button" id=&quo ...

  2. JS中点击事件冒泡阻止

    JS中点击事件冒泡阻止 解析: 一个div层'out',内含有一个div层'in'.如下: 两个层都绑定了点击事件,但是点击in层的时候,点击事件会出现冒泡现象,同时也会触发out层的点击事件. 但是 ...

  3. IE下 input 的父级标签被 disabled 之后引发的怪异行为

    前段时间做了个网盘类的项目,意外发现了这个情况 IE下,将input的父级标签增加 disabled 属性之后,input 的行为变得怪异: 1.input 背景变灰,疑似也被disabled 了. ...

  4. 项目遇到的小问题(关于vue-cli中js点击事件不起作用和iconfont图片下载页面css样式乱的解答)

     第一个:关于vue-cli中js点击事件不起作用 在vue的methods方法queryBtnFun()中拼接html和click操作事件的时候,发现点击事件一起未起作用: 后来发现是DOM执行顺序 ...

  5. IOS的UIWebView中JS点击事件,需要加入cursor:pointer;属性才可以

    IOS的UIWebView中JS点击事件,需要加入cursor:pointer;属性才可以. Android的WebView可以支持外链样式,js文件:IOS则需要改为内嵌样式和JS文件.

  6. JS 点击事件学习总结

    废话篇: 在我们编写无论什么网页内容的时候我们总是或多或少的要接触到点击事件这一范畴的,写过几个简短的demo和网页之后,感觉自己对电机事件一类的东西了解也更为的清楚了,之前写过很多零零散散的东西现在 ...

  7. 转:js点击事件在ios中失效的3种解决方案

    ios中不允许将点击事件绑定在document或者body上,如果绑定上的话将会失效.解决方案: 例如:  $(document).on('click', '#generate', function ...

  8. js动态绑定class(当前父级div下的子元素有没有这个class,有的话移除,没有的话添加)

    <div class="layui-inline" id=‘’   onclick="changeType(id)">                ...

  9. jQuery获取点击对象的父级

    一.使用$('body').on('click','.index',function(event){})绑定事件时,例: <div class="project-box"&g ...

随机推荐

  1. Android R.java:10: “duplicate class”

    在使用mmm命令编译android的app时出现错误error : R.java:10: "duplicate class" 参考方法: http://www.xuebuyuan. ...

  2. 第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理

    第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理 1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字 ...

  3. android手机如何获取手机号

    两个方案:1 通过android.permission.READ_PHONE_STATE读取  2 通过短信过滤,读取手机号. 按照第1个方案,AndroidManifest.xml需要添加 < ...

  4. 模式识别之bpnn---神经网络训练

    http://blog.csdn.net/linj_m/article/details/40679085

  5. MATLAB:读取mat文件中物体的三维坐标,显示三维模型

    在MATLAB中建立一个脚本show3Dmat.m文件,编写代码: clc; clear; %%read 3D data load('E:\博士\深度学习与三维重建\代码实现\3DRecGAN\X_Y ...

  6. java项目中的路径获取,request

    java web项目中获取项目根路径(tomcat可运行的web源码的路径)的方式: 分为两种情况: 情况一: 在eclipse.inde等开发工具中获取(注:如下代码所在的类必须是控制层所在包下的类 ...

  7. Logback中文文档(四):Appender

    什么是 Appender Appender是负责写记录事件的组件.Appender 必须实现接口"ch.qos.logback.core.Appender".该接口的重要方法总结如 ...

  8. mac osx voice over的使用

    mac下的filezilla是一个很奇葩的应用,奇葩在哪?有一次我不知道怎么操作的,把filezilla搬到到了窗体顶部,结果被mac的菜单栏挡住了标题栏,然后再也无法移动窗体了,以下是我为了移动它做 ...

  9. 不确定行数的多行文本垂直水平居中的css

    ul li { position:relative; display: table; width:3rem; height:3rem; background:url('image/defaultBg. ...

  10. 利用opencv作透明重叠人群密度热度图

    在作热度图的时候我们经常需要将热度图调整透明度后叠加在原图上达到更好的展示效果.比如检测人气密度的热度图: (来自sensetime) 一般作图的时候会第一时间想到matplotlib,因为可以很方便 ...