jQuery中on和trigger的使用
考虑这样的应用场景:我们希望在点击checkbox后,其后紧跟的span标签中的文字会加粗。实现这种功能很简单,只需要在checkbox的click回调方法中完成相应的功能即可。但是如果我们希望在代码中手动(而不是用鼠标点击)触发该事件时,可以使用jQuery的on 和 trigger。
--By Brisk
on:
给jQuery对象注册一个事件。比如我为每个checkbox都注册一个addBold事件:
$(':checkbox').on('addBold', function () { $(this).next('span').css("font-weight", "bold"); });
trigger:
用on注册之后,就可以用trigger在代码中手动触发该事件:
$(':checkbox').trigger('addBold');
这其实是一个观察者模式,on是订阅者,trigger是发布者。