1、事件绑定:

  .eventName(fn)  //编码效率略高,但部分事件jQuery没有实现

  .on(eventName, fn)  //编码效率略低,所有事件均可以添加

    注意点:可以同时添加多个相同或不同类型的事件

2、事件解除

  .off()

    不传参数: $('button').off()  //解绑该对象的所有事件

    一个参数:$("button").off("click")  //解绑该对象的“click”类型事件

    两个参数:$("button").off("click", fnName);  解绑该对象“click”类型的“fnName”事件

3、事件冒泡

  阻止事件冒泡:(两种方法)

    $(".son").click(function(event) {

      alert("停止冒泡");

      return false;  //或者

      event.stopPrapagation();

    })

4、事件默认行为(类似于"a"标签点击就会发生刷新或者跳转)

  取消事件默认行为:

    $("input:submit").click(function(event) {

      return false;  //或者

      event.preventDefault;

    })

5、事件的自动触发

  .trigger()、triggerHandler()

    $(".btn").trigger("click");  //自动触发click事件(触发事件冒泡和事件冒泡行为)

    $(".btn").triggerHandler("click");  (不触发事件冒泡机制和事件默认行为)

      注意:.trigger()方法模拟标签“a”,不会触发事件默认行为

      解决办法:

        <a><span>点击<span><a>

        $("span").trigger("click");

6、自定义事件 (只能通过.on(eventName, fn))的形式绑定事件

  $("btn").on("myClick", function() { ... })  //自定义事件

  $("btn").click(function() { $("btn").trigger("myClick") })   触发click事件时自动触发myClick事件

7、事件命名空间

  $("btn").on("click.xml", function() { ... })  //自定义事件

  $("btn").on("click.hgh", function() { ... })

  $("btn").clcik(function() {

    $("btn").trigger("click.xml")  

  })

8、事件委托  (用于在入口函数有之前的元素来监听动态添加的元素的某些事件)

  .delegate()

  $("ul").delegate("li", "click", function() {   //将“li”的“click”事件委托给“ul”来监听

    console.log($(this).html())  //“this”指向点击的“li”元素

   })  

9、移入移出事件

  .mouseout()、.mouseover()事件,在子元素被移入移出时,也会触发父元素的移入移出事件

  .mouseenter()、mouseleave()事件,在子元素被移入移出时,不会触发父元素的移入移出事件

  建议使用:

  .hover()

  $("div").hover(function() {

    //移入时触发

  }, function() {

    //移出时触发

  })

  $("div").hover(function() { // 移入移出均触发事件 })

jQuery 学习笔记(5)(事件绑定与解绑、事件冒泡与事件默认行为、事件的自动触发、自定义事件、事件命名空间、事件委托、移入移出事件)的更多相关文章

  1. jQuery事件绑定、解绑、命名空间

    jQuery事件绑定.解绑.命名空间 <%@ page language="java" import="java.util.*" pageEncoding ...

  2. React事件绑定与解绑

    React中事件分类 React中事件绑定分为两种: 1.直接添加在React元素上的事件,这是React在基于Virtual DOM的基础上实现的符合w3c规范的合成事件(SyntheticEven ...

  3. 兼容8事件绑定与解绑addEventListener、removeEventListener和ie的attachEvent、detachEvent

    兼容8事件绑定与解绑addEventListener.removeEventListener和ie的attachEvent.detachEvent   ;(function(){ // 事件绑定 bi ...

  4. jQuery学习笔记之Ajax用法详解

    这篇文章主要介绍了jQuery学习笔记之Ajax用法,结合实例形式较为详细的分析总结了jQuery中ajax的相关使用技巧,包括ajax请求.载入.处理.传递等,需要的朋友可以参考下 本文实例讲述了j ...

  5. jQuery事件绑定,解绑,触发

    事件绑定 1.bind(type,[data],fn) --type: 含有一个或多个事件类型的字符串,由空格分隔多个事件.比如"click"或"submit" ...

  6. jquery中的DOM事件绑定与解绑

    在jquery事件中有时候有的事件只需要在绑定后有效触发一次,当通过e.target判断触发条件有效触发后解除绑定事件,来避免多次无效触发和与未知情况造成冲突. 这时候就要用到了jquery中的事件绑 ...

  7. jQuery之_事件绑定与解绑

    使用jQuery实现事件的绑定和解绑 就是所谓的事件操作. 1. 事件绑定(2种): * eventName(function(){}) 绑定对应事件名的监听, 例如:$('#div').click( ...

  8. jQuery-3.事件篇---事件绑定与解绑

    on()的多事件绑定 之前学的鼠标事件,表单事件与键盘事件都有个特点,就是直接给元素绑定一个处理函数,所有这类事件都是属于快捷处理.翻开源码其实可以看到,所有的快捷事件在底层的处理都是通过一个&quo ...

  9. jQuery学习笔记(三)

    jQuery中的事件 页面加载 原生DOM中的事件具有页面加载的内容onload事件,在jQuery中同样提供了对应的内容ready()函数. ready与onload之间的区别: onload re ...

随机推荐

  1. iOS 实现单个页面支持横竖屏,其他页面只能竖屏

    最近在自己的项目里面 有需要做一个需求 : app中某一个页面支持横竖屏, 而其他页面只能竖屏. 1 2 实现方法如下: 1 首先需要Xcode中选中支持的屏幕方向  2 Appdelegate中 . ...

  2. [Linux]linux下取消用户名和密码直接登录

    假定目前只有root用户,则有如下两种方式可直接登录系统: 方式一: 1. passwd -d root 2. 修改/lib/systemd/system/serial-getty\@.service ...

  3. mysql表空间加密 keyring encryption

    从5.7.11开始,mysql开始支持物理表空间的加密,它使用两层加密架构.包括:master key 和 tablespace key master key用于加密tablespace key,加密 ...

  4. halcon电路断裂检测

    read_image (Image, 'pcb')dev_close_window ()get_image_size (Image, Width, Height)dev_open_window (0, ...

  5. Git分支操作——查看、新建、删除、提交、合并

    查看分支 1 查看本地分支 $ git branch   2 查看远程分支 $ git branch -r     创建分支 1 创建本地分支 $ git branch branchName 2 切换 ...

  6. Linux操作系统配置Go语言编程环境

    之前一直在windows下写Go,现在工作环境切换至Linux下,因此写下此文,记录安装Go环境的过程. 操作系统:CentOS7.5 一.安装步骤 1,下载Go语言安装包 yum install g ...

  7. jedis中scan的实现

    我的版本说明: redis服务端版本:redis_version:2.8.19 jedis: <dependency> <groupId>redis.clients</g ...

  8. C_C++变量命名规则

    变量命名规则是为了增强代码的可读性和容易维护性.以下为C++必须遵守的变量命名规则: 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成. 第一个字母必须是字母或者下划线开头. 不 ...

  9. 数据库更新锁WITH UPDLOCK

    今天因为并发的问题,又讨论了一遍.之前以为同时两个线程开启,线程A加了更新锁,线程B没有加,线程A更新后,线程B也会继续下去代码.但是今天测试了一下,原来线程A更新后(解锁),线程B将不会继续,会出现 ...

  10. 学习Vue 入门到实战——学习笔记

    闲聊: 自从进了现在的公司,小颖就再没怎么接触vue了,最近不太忙,所以想再学习下vue,就看了看vue相关视频,顺便做个笔记嘻嘻. 视频地址:Vue 入门到实战1.Vue 入门到实战2 学习内容: ...