trigger

    技术2025-03-20  32

    众所周知类似于mousedown、click、keydown等等这类型的事件都是浏览器提供的。通俗叫原生事件,这类型的事件是需要有交互行为才能被触发,Trigger事件可以帮助我们快速调用该事件,并且也是可以自定义事件调用 $(ele).trigger(eventName,fn) 调用元素事件

    <script> //js div1.onclick = function(){ alert(1); } div1.onclick(); //jq $('#div1').on({ 'click':function(){ alert(1); } }) $('#div1').on({ 'click':function(e,s,k){ alert(s); }, 'leo':function(e,t,y){ //自定义事件 } }); $('#div1').trigger('click'); $('#div1').trigger('click',[1,2]); $('#div1').trigger('leo',[5,7]); </script>

    trigger事件是具有触发原生与自定义能力的,但是存在一个不可避免的问题:事件对象event无法完美的实现,毕竟一个是浏览器给的,一个是自己模拟的,尽管.trigger()模拟事件对象,但是它并没有完美的复制自然发生的事件,若要触发通过jq绑定的事件处理函数,而不触发原生的事件,使用.triggerHandler()来代替 $(ele).triggerHandler(eventName,fn) 调用元素事件

    js oniput

    Processed: 0.009, SQL: 9