触发事件
由代码主动触发事件
- trigger(eventType[,data])
- triggerHandler(eventType[,data])
区别:
triggerHandler 相比 trigger:
1. 不会触发浏览器默认事件
2. 不会产生事件冒泡
3. 只触发jQuery 对象集合中第一个元素的事件处理函数
4. 返回的是事件处理函数的返回值,而不是jQuery 对象(对它不能使用链式语法)
示例一
<script type="text/javascript">
$(function(){
$('li').on('click',function(event){
console.log('%o clicked',$(this));
return '124';
});
$('#all').on('click',function(event){
// $('li').trigger('click');
console.log($('li').triggerHandler('click'));
})
});
</script>
示例二
<script type="text/javascript">
$(function(){
$('li').on('click',function(event,arg1,arg2){
console.log('%o clicked',$(this));
console.log(arg1);
console.log(arg2);
return '124';
});
$('#all').on('click',function(event){
// $('li').trigger('click');
console.log($('li').triggerHandler('click',[1,2]));
})
});
</script>