-
textarea change事件 在失去焦點(diǎn)時觸發(fā)查看全部
-
經(jīng)過簡單的實(shí)驗,覺得e.target是實(shí)際的觸發(fā)事件的元素,而this是給哪個元素綁定了事件,結(jié)合這個例子 e.target是li,this是ul,個人見解 <script type="text/javascript"> //多事件綁定一 $("ul").on('click',function(e){ alert('觸發(fā)的元素是內(nèi)容是: ' + e.target.textContent) $(e.target).css('color','red') // $(this).css('color','red') }) </script> 這個委托的意思就是減少事件綁定, $("li").on('click' 為每個li都綁定click事件 $("ul").on('click' 只為ul綁定click事件 通過事件冒泡來執(zhí)行事件 網(wǎng)頁優(yōu)化的一種查看全部
-
綁定2個事件 $("elem").on("mousedown mouseup",fn) 刪除一個事件 $("elem").off("mousedown") 刪除所有事件 $("elem").off("mousedown mouseup") 快捷方式刪除所有事件,這里不需要傳遞事件名了,節(jié)點(diǎn)上綁定的所有事件講全部銷毀 $("elem").off() 如果按原來的代碼:第一個script結(jié)構(gòu)體加載的時候只有一個button,所以第一個script里面的事件綁定只給了第一個button;第二個script結(jié)構(gòu)體加載的時候已經(jīng)有了兩個button,所以第二個script結(jié)構(gòu)體里面的事件綁定給了兩個button;因此第一個button綁定了兩個click事件,第二個button只綁定了一個click事件;查看全部
-
事件委托就是利用事件冒泡原理,把處理任務(wù)委托給父元素或者祖先元素(通常用父元素),我們通過目標(biāo)對象來判斷事件源,并執(zhí)行事件處理。 <div class="left"> <p class="aaron"> <a>目標(biāo)節(jié)點(diǎn)</a> //點(diǎn)擊在這個元素上 </p> </div> 給出如下代碼: $("div").on("click","p",fn) 點(diǎn)擊A元素后 開始事件冒泡,從指定元素開始向上到不定元素,遇到指定選擇器就會執(zhí)行事件回調(diào)函數(shù) 我試過了,只能給祖輩元素綁定事件的時候,選擇器參數(shù)為后代元素,才能實(shí)現(xiàn)這樣的事件委托,也就是說只有祖輩元素能委托后代元素,同輩元素之間不能相互委托,后代元素也不能委托祖輩元素 取決于你把$("div").on("click","參數(shù)",fn)里的參數(shù)設(shè)成啥,設(shè)成p只有點(diǎn)擊p才有效果喲~查看全部
-
多個事件綁定同一個函數(shù) $("#elem").on("mouseover mouseout",function(){ }); 通過空格分離,傳遞不同的事件名,可以同時綁定多個事件 多個事件綁定不同函數(shù) $("#elem").on({ mouseover:function(){}, mouseout:function(){}, }); 將數(shù)據(jù)傳遞到處理程序 function greet( event ) { alert( "Hello " + event.data.name ); //Hello 慕課網(wǎng) } $( "button" ).on( "click", { name: "慕課網(wǎng)" }, greet ); 可以通過第二參數(shù)(對象),當(dāng)一個事件被觸發(fā)時,要傳遞給事件處理函數(shù)的查看全部
-
keypress事件與keydown和keyup的主要區(qū)別 對中文輸入法支持不好,無法響應(yīng)中文輸入 無法響應(yīng)系統(tǒng)功能鍵(如delete,backspace) 由于前面兩個限制,keyCode與keydown和keyup不是很一致 總而言之, KeyPress主要用來接收字母、數(shù)字等ANSI字符,而 KeyDown 和 KeyUP 事件過程可以處理任何不被 KeyPress 識別的擊鍵。諸如:功能鍵(F1-F12)、編輯鍵、定位鍵以及任何這些鍵和鍵盤換檔鍵的組合等。 keypress也只能獲取之前輸入的值查看全部
-
鍵盤的邏輯是:先“按下”,再“輸入”。故監(jiān)聽keydown時顯示出來的是上一次輸入的內(nèi)容。而keyup就沒有這個問題了。keydown事件會少一個字符是因為事件觸發(fā)在前,獲取的是前面已經(jīng)輸入的字查看全部
-
具體能觸發(fā)submit事件的行為: <input type="submit"> <input type="image"> <button type="submit"> 當(dāng)某些表單元素獲取焦點(diǎn)時,敲擊Enter(回車鍵) 這里需要特別注意: form元素是有默認(rèn)提交表單的行為,如果通過submit處理的話,需要禁止瀏覽器的這個默認(rèn)行為 傳統(tǒng)的方式是調(diào)用事件對象 e.preventDefault() 來處理, jQuery中可以直接在函數(shù)中最后結(jié)尾return false即可 <form action="______">這里面的地址就是提交之后頁面跳轉(zhuǎn)的地址。查看全部
-
當(dāng) textarea 或文本類型的 input 元素中的文本被選擇時,會發(fā)生 select 事件。 這個函數(shù)會調(diào)用執(zhí)行綁定到select事件的所有函數(shù),包括瀏覽器的默認(rèn)行為。可以通過在某個綁定的函數(shù)中返回false來防止觸發(fā)瀏覽器的默認(rèn)行為。 有三種方式解決: return false; preventDefault; stopPropagation(); select事件只能用于<input>元素與<textarea>元素 //監(jiān)聽textarea元素中value的選中 $('textarea').select(function(e) { alert(window.getSelection().toString());//非IE內(nèi)核瀏覽器可以用這種方法,考慮兼容性的話你可以用getselectionstart()和getselectionend() });查看全部
-
代碼中的e.target返回的是綁定這個事件的DOM對象, 是DOM對象不是Jquery對象, 所以e.target后面跟的屬性是js中的屬性和方法,要用e.target,value;jquery中的屬性和方法用不了,若要用jquery的屬性方法,要轉(zhuǎn)化為Jquery對象$(e.target).val(). 或者$(this).val(); this冒泡,e.target.value不冒泡查看全部
-
focusin當(dāng)一個元素,或者其內(nèi)部任何一個元素獲得焦點(diǎn)的時候會觸發(fā)這個事件。這跟focus事件區(qū)別在于,他可以在父元素上檢測子元素獲取焦點(diǎn)的情況。查看全部
-
focus和blur不支持冒泡,focusin和focusout支持冒泡 <script type="text/javascript"> //不同函數(shù)傳遞數(shù)據(jù) function fn(e) { $(this).val(e.data); $('.aaron1 span').html('請輸入?yún)?shù)!').css('color','red'); } function a() { $("input:last").focusout('慕課網(wǎng)', fn) $('input:last').focus('',function(e){ $(this).val(e.data); $('.aaron1 span').html(''); }) } a();查看全部
-
當(dāng)一個元素,或者其內(nèi)部任何一個元素獲得焦點(diǎn)的時候,例如:input元素,用戶在點(diǎn)擊聚焦的時候,如果開發(fā)者需要捕獲這個動作的時候,,jQuery提供了一個focusin事件 $('input:last').focusin('慕課網(wǎng)',function(e){ $(this).val(e.data); })查看全部
-
只需要在hover方法中傳遞2個回調(diào)函數(shù)就可以了,不需要顯示的綁定2個事件 $(selector).hover(handlerIn, handlerOut) handlerIn(eventObject):當(dāng)鼠標(biāo)指針進(jìn)入元素時觸發(fā)執(zhí)行的事件函數(shù) handlerOut(eventObject):當(dāng)鼠標(biāo)指針離開元素時觸發(fā)執(zhí)行的事件函數(shù) $("p").hover( function() { $(this).css("background", 'red'); }, function() { $(this).css("background", '#bbffaa'); } );查看全部
-
mouseenter和mouseleave沒有冒泡問題查看全部
舉報
0/150
提交
取消