当前位置: 代码迷 >> 综合 >> trigger
  详细解决方案

trigger

热度:75   发布时间:2024-02-01 03:06:22.0

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

<script>//jsdiv1.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