例子里面triggerHandler既没有触发focus也没有触发click,那这个函数有什么用?
alert了一下发现 返回的都是undefined
alert了一下发现 返回的都是undefined
2016-11-23
$("input").on("focus",function(event,title) { $(this).val(title); return 5; }); $("#accident").on("click",function() { alert("trigger触发的事件会在 DOM 树中向上冒泡"); return 6; }); $("button:first").click(function() { //$("a").trigger("click"); //$("input").trigger("focus"); alert($("input").triggerHandler("click")) }); $("button:last").click(function() { // $("a").triggerHandler("click"); //$("input").triggerHandler("focus","没有触发默认聚焦事件"); alert($("input").triggerHandler("focus")); });
显示 ,一个undefined,一个5.
first_btn : input 它没有click事件,所以是undefined,input的上级div id=accident ,它是有click事件的,但是triggerHandler并不冒泡,所以也就无法传到div id=accident 上,所以alert返回的只有undefined
last_btn : 同理 。
我将我们谈论到的两个事件都设置了返回值为某个定值,然后再alert了button:last点击事件的结果,发现triggerHandler指向的input的focus和click事件返回的都是undefined,也就是说什么事件都没有触发。。。
$("input").on("focus",function(event,title) {return 5; });//如果触发就返回5
$("#accident").on("click",function() {return 6; });//如果触发就返回6
alert($("input").triggerHandler("click"));//undefined
alert($("input").triggerHandler("focus"//undefined
举报