为了账号安全,请及时绑定邮箱和手机立即绑定

例子里面triggerHandler既没有触发focus也没有触发click,那这个函数有什么用?

alert了一下发现 返回的都是undefined

正在回答

4 回答

 $("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  :   同理 。

0 回复 有任何疑惑可以回复我~

我将我们谈论到的两个事件都设置了返回值为某个定值,然后再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


0 回复 有任何疑惑可以回复我~
#1

qq_缔曦_04032696

你最后一个是不是写错了啊,我写是可以运行的 不识 undefined
2016-11-25 回复 有任何疑惑可以回复我~

事实上这两个都触发了,但是没有冒泡!但是没有冒泡!但是没有冒泡!

重要的事情说三遍,没冒泡,也就没有作用到上层的<div id="accident">,没作用到<div id="accident">也就不用触发

$("#accident").on("click",function() {

        alert("trigger触发的事件会在 DOM 树中向上冒泡");

    });

了,所以,不会弹出alert窗口。

说白了,就是一个冒泡的问题。

0 回复 有任何疑惑可以回复我~
#1

格劳修斯 提问者

由于字数限制回复到下面了,意思是这样的: $("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
2016-11-24 回复 有任何疑惑可以回复我~

在某些不希望触发原生事件绑定函数的时候使用

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

例子里面triggerHandler既没有触发focus也没有触发click,那这个函数有什么用?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信