小虾学前端
2017-01-12 10:06
<script type="text/javascript">
//给input绑定一个聚焦事件
$("input").on("focus",function(event,title) {
$(this).val(title)
});
$("#accident").on("click",function() {
alert("trigger触发的事件会在 DOM 树中向上冒泡");
});
//trigger触发focus
$("button:first").click(function() {
$("a").trigger("click");
$("input").trigger("focus");
});
trigger支持冒泡,为什么我给input传入一个title参数比如 $("input").trigger("focus",“触发聚焦事件”);点击第一个按钮触发不了聚焦事件呢
//triggerHandler触发focus
$("button:last").click(function() {
$("a").triggerHandler("click");
$("input").triggerHandler("focus","没有触发默认聚焦事件");
});
</script>
通过查看其他同学答案,既要有聚焦行为,又要input显示value值是矛盾的;其实不传参数时已经触发了聚焦事件(点击按钮1后光标停留在了input文本框内),foucus是原生事件,trigger会触发原生事件,如把foucus随便改成一个名字,点击按钮一时该参数就显示在input文本框了
jQuery基础(三)—事件篇
89997 学习 · 625 问题
相似问题