问答详情
源自:7-1 jQuery自定义事件之trigger事件

( ╯□╰ )这里怎么理解,哪位大大能给小白解释一下?

alert需要执行的条件:必须有用户点击才可以。如果不同用户交互是否能在某一时刻自动触发该事件呢? 正常来说是不可以的,但是jQuery解决了这个问题,提供了一个trigger方法来触发浏览器事件。

( ╯□╰ )小白资质愚钝,麻烦举个例子。


提问者:墨小漓 2016-10-18 21:00

个回答

  • GavinZeng
    2016-10-25 09:18:57

    拿原生JS和JQ代码做比较来说明这个问题:

    var Div = document.getElementsByTagName("div")[0];
    Div.addEventListener("click",function(){
        alert("触发click事件");
    },false);

    使用原生JS添加的这个事件对象,是无法通过其他方式触发的。

    假如,我们希望通过其他方式来触发这个事件,可以使用JQ代码来实现:

    $("div").on("click",function(){
        alert("触发click事件");
    });
    function dome(){
        $("div").trigger("click");
    }
    dome();

    这里使用JQ添加了一个事件,然后使用trigger方法,通过函数dome又触发了这个事件,注意:事件触发的时候,元素div并没有被点击,说明这个事件是通过dome函数调用来触发的

  • 知白守黑3944358
    2016-10-18 22:17:30

    比如input的select事件,只有选中后才能触发。通过trigger可以将这个select事件绑定到button上,只需要点击button就会触发input的select。  

     $("button").click(function(){

        $("input").trigger("select");

      });