• jQuery trigger 触发事件


    trigger(type,[data])在每一个匹配的元素上触发某类事件。这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。
    你也可以触发由bind()注册的自定义事件而不限于浏览器默认事件。事件处理函数会收到一个修复的(规范化的)事件对象,但这个对象没有特定浏览器才有的属性,比如keyCode。
    jQuery也支持 命名空间事件。这允许你触发或者解除绑定一组特定的事件处理函数,而无需一一个指定。你可以在事件类型后面加上感叹号 ! 来只触发那些没有命名空间的事件处理函数。
    jQuery 1.3中新增:
    所 有触发的事件现在会冒泡到DOM树上了。举例来说,如果你在一个段落p上触发一个事件,他首先会在这个元素上触发,其次到父元素,在到父元素的父元素,直 到触发到document对象。这个事件对象有一个 .target 属性指向最开始触发这个事件的元素。你可以用 stopPropagation() 来阻止事件冒泡,或者在事件处理函数中返回false即可。
    事件对象构造器现在已经公开,并且你可以自行创建一个事件对象。这个事件对象可以直接传递给trigger所触发的事件处理函数。事件对象的完整属性列表可以在 jQuery.Event 的文档里找到。
    你可以有三种方式指定事件类型:
    * 你可以传递字符串型的事件名称(type参数)。
    * 你可以使用jQuery.Event对象。可以将数据放进这个对象,并且这个对象可以被触发的事件处理函数获取到。
    * 最后,你可以传递一个带有数据的字面量对象。他将被复制到真正的jQuery.Event对象上去。 注意在这种情况下你必须指定一个 type 属性。
    返回值 : jQuery
    参数 :
    type (String,Event,Object) : 一个事件对象或者要触发的事件类型
    data (Array) : (可选)传递给事件处理函数的附加参数

    示例 :
    提交第一个表单,但不用submit()
    jQuery 代码:
    $("form:first").trigger("submit")
    --------------------------------------------------------------------------------
    给一个事件传递参数
    jQuery 代码:
    $("p").click( function (event, a, b) {
    // 一个普通的点击事件时,a和b是undefined类型
    // 如果用下面的语句触发,那么a指向"foo",而b指向"bar"
    } ).trigger("click", ["foo", "bar"]);
    --------------------------------------------------------------------------------
    下面的代码可以显示一个"Hello World"
    jQuery 代码:
    $("p").bind("myEvent", function (event, message1, message2) {
    alert(message1 + ' ' + message2);
    });
    $("p").trigger("myEvent", ["Hello","World!"]);



  • 相关阅读:
    PXC配置过程
    值得学习的C语言开源项目
    使用命令批量添加svn文件
    配置快捷键,自动最大化打开终端
    创建SpringBoot Starter教程
    SpringBoot说明文档使用技巧
    Windows MySQL8+安装教程
    字符串、常量池、StringBuilder之间的微妙关系
    Linux系统查看CPU、内存、硬盘命令
    cpu 使用率高问题定位及排查
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/2524652.html
Copyright © 2020-2023  润新知