trigger()方法的“手动触发”提醒在哪里啊?事件直接就加载了,并不需要手动触发啊
问题如题。
问题如题。
2016-03-28
http://www.w3school.com.cn/tiy/t.asp?f=jquery_event_trigger
你看一下这个例子,mooc这里是触发,但没绑定一个需要用户去操作的事件,比如点击。所以,上来就能触发,也就是一开始就改变了颜色。所以相当于上来就加载了。
如果他写一个click事件,绑定一个函数,那么要你点击才能触发。
如果是点击触发,有了click不就够了吗。为什么用trigger,原因在于。trigger可以接受传参。如果click(执行的函数)click这里不能接受参数trigger则可以。具体应用场景。。。我也不是很明白。
上面你问的function传参是什么意思?
$("div").bind("change-color", function () {
$(this).addClass("color");
});
如果是这部分的话,不用传参数啊。给div加类嘛,类一般在css文件指定好了。不需要什么参数
$("div").trigger("change-color");
如果是这部分的话。就相当于绑定一个change-color方法到div上而且上来就触发。change-color刚刚都不需要参数,这里也不需要
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>trigger()手动触发事件</title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script> <link href="style.css" rel="stylesheet" type="text/css" /> </head> <body> <h3>trigger()手动触发事件</h3> <div>土豪,咱们交个朋友吧</div> <script type="text/javascript"> $(function () { $("div").bind("change-color", function () { $(this).addClass("color"); }); $("div").trigger("change-color"); }); </script> </body> </html>
拿任务举个栗子
$("div").bind("change-color", function () {
$(this).addClass("color");
});
这里绑定了个自定义事件,但是你没法触发这个"change-color"事件只有你通过添加
$("div").trigger("change-color");
来手动触发这个事件。这是我的理解- -
举报