美文网首页
jq阻止冒泡

jq阻止冒泡

作者: _信仰zmh | 来源:发表于2017-11-22 22:47 被阅读0次

jQuery是个很好用的库,封装了很多方法,熟练的话,对开发效率提升很不错。

jQuery中是怎么来阻止默认事件的呢?

有时候用户的操作未满足某些条件时,需要阻止某些元素的默认行为,如链接的跳转和表单的提交等,jQuery 提供了 event.preventDefault() 方法来实现。

  $(":submit").click(function(event) {     //为方法添加一个事件对象参数  
                    //当未输入用户名时,提示并阻止提交  
                    if ($(":text").val() == "") {     
                        $("#msg").text("用户名不能为空");  
                        event.preventDefault();     //阻止提交按钮的默认行为(提交表单)  
                    }  
                });  

那么jQuery中是怎么来阻止冒泡事件的呢?
  • 第一种方法:使用event.stopPropagation();
 $("#div1").mousedown(function(event){
          // 事件响应程序
         console.log("十年生死两茫茫,");
         event.stopPropagation();
 });
  • 第二种方法: return false;
 $("#div1").mousedown(function(event){
           //响应事件:要干什么 
          console.log("不思量,自难忘!");
           return false;//阻止冒泡
 });
  • 两种方式的区别:
    • event.stopPropagation() 则只阻止事件往上冒泡,不阻止事件本身

    • return false 不仅阻止了事件往上冒泡,而且阻止了事件本身。

    • 记住:两个共同点,写 响应函数必须传参数event


总结如下:

  • 写法:$(dom) + 触发动作 + 触发程序

  • 必须方法添加一个事件对象参数 event必不可少

  • 阻止默认:event.preventDefault();

  • 阻止冒泡:event.stopPropagation();

  • 阻止默认和冒泡:return false;

    • 如果想同时阻止事件冒泡和阻止元素默认行为,可以在事件函数中返回 false 来代替调用 stopPropagation() 和 preventDefault() 方法。

相关文章

  • jq阻止时间冒泡

  • vue阻止冒泡

    阻止向上冒泡 阻止向下冒泡

  • 冒泡委托

    冒泡定义:点击子组件会触发父组件事件,所有父组件,先子一层一层到父。 jq阻止冒泡有3种方法: 1, event....

  • 冒泡委托

    冒泡定义:点击子组件会触发父组件事件,所有父组件,先子一层一层到父。1 jq阻止冒泡有3种方法:1, event....

  • 冒泡和事件委托

    冒泡定义:点击子组件会触发父组件事件,所有父组件,先子一层一层到父。1 jq阻止冒泡有3种方法: 1, event...

  • stopPropagation和stopImmediatePro

    都可以阻止事件冒泡(子元素向父元素冒泡) stopImmediatePropagation阻止事件冒泡并且阻止相同...

  • 微信小程序中bind和catch的区别

    bindtap 冒泡事件,事件绑定不会阻止冒泡事件向上冒泡catchtap 非冒泡事件, 事件绑定阻止冒泡事件...

  • jquery的基本操作

    1、jq中的hover事件(移入/移除)写法参照: 2、jq中的阻止默认事件; ** 3、jq中的阻止事件传递(防...

  • vue阻止向上和向下冒泡

    1.阻止向下冒泡 2.阻止向上冒泡

  • JS调试代码方向

    事件冒泡 - 阻止冒泡

网友评论

      本文标题:jq阻止冒泡

      本文链接:https://www.haomeiwen.com/subject/cfbtbxtx.html