triggerHandler
<script type="text/javascript">
? ? //給input綁定一個(gè)聚焦事件
? ? $("input").on("focus",function(event,title) {
? ? ? ? $(this).val(title)
? ? });
? ? $("#accident").on("click",function() {
? ? ? ? alert("trigger觸發(fā)的事件會(huì)在 DOM 樹中向上冒泡");
? ? });
? ? //trigger觸發(fā)focus
? ? $("button:first").click(function() {
? ? ? ? $("a").trigger("click");
? ? ? ? $("input").trigger("focus");
? ? });
? ? //triggerHandler觸發(fā)focus
? ? $("button:last").click(function() {
? ? ? ? $("a").triggerHandler("click");
? ? ? ? $("input").triggerHandler("focus","沒(méi)有觸發(fā)默認(rèn)聚焦事件");
? ? });
</script>
上面代碼中
$("input").on("focus",function(event,title) {
? ? ? ? $(this).val(title)
? ? });
這兩行代碼能不能具體解釋一下,謝謝、、、$(this).val(title)是什么意思
2019-01-09
1.
$("input").on("focus",function(event,title) {
? ? ? ? $(this).val(title)
? ? });
這個(gè)是指input設(shè)置focus事件, $(this).val(title)是設(shè)置某個(gè)元素節(jié)點(diǎn)的value值,即獲取$(this)元素節(jié)點(diǎn)并將title的值插入進(jìn)去.
2.
$("button:last").click(function() {
? ? ? ? $("a").triggerHandler("click");
? ? ? ? $("input").triggerHandler("focus","沒(méi)有觸發(fā)默認(rèn)聚焦事件");
? ? });
當(dāng)點(diǎn)擊第二個(gè)按鈕時(shí)觸發(fā)事件,先執(zhí)行$("a").triggerHandler("click");事件,觸發(fā)a的click事件,因?yàn)閍沒(méi)有click事件,且triggerHandler不會(huì)冒泡,所以沒(méi)有執(zhí)行效果。接著執(zhí)行?$("input").triggerHandler("focus","沒(méi)有觸發(fā)默認(rèn)聚焦事件");事件,觸發(fā)input的focus事件,并傳入title值。因?yàn)閠riggerHandler不會(huì)冒泡,只執(zhí)行input的focus方法,把title的值插入input中。
2018-11-20
還有下面的
$("button:last").click(function() {
? ? ? ? $("a").triggerHandler("click");
? ? ? ? $("input").triggerHandler("focus","沒(méi)有觸發(fā)默認(rèn)聚焦事件");
? ? });
這幾行具體流程是什么樣子的