您好,登錄后才能下訂單哦!
了解jquery中on()與click()有哪些區(qū)別?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
區(qū)別:click()屬于靜態(tài)加載,當(dāng)頁面加載完,就不在為新增加的元素添加點(diǎn)擊事件;而on()屬于動態(tài)加載,當(dāng)頁面加載完,可以為新增加的元素添加事件,但是必須選定父級元素。
jquery中on()與click()的區(qū)別
click()屬于靜態(tài)加載,當(dāng)頁面加載完,就不在為新增加的元素添加點(diǎn)擊事件。
on()屬于動態(tài)加載,當(dāng)頁面加載完,可以為新增加的元素添加事件,但是必須選定父級元素。
二者在綁定靜態(tài)控件時沒有區(qū)別,但是如果面對動態(tài)產(chǎn)生的控件,只有 on() 能成功的綁定到動態(tài)控件中。
以下實(shí)例中原先的 HTML 元素點(diǎn)擊其身后的 Delete 按鈕就會被刪除。而動態(tài)添加的 HTML 元素,使用 click() 這種寫法,點(diǎn)擊 Delete 按鈕無法刪除;使用 On() 方式可以。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script> </head> <body> <h2>展示jQuery中on()和click()的區(qū)別</h2> <p> <span>點(diǎn)擊生成新按鈕。NewOn生成的Delete按鈕行為用on()實(shí)現(xiàn),NewClick生成的Delete按鈕行為用click()實(shí)現(xiàn)。</span> </p> <div class="test"> <button class="new" id="newon">NewOn</button> <button class="new" id="newclick">NewClick</button> <ul class="li"> <li>原先的HTML元素on<button class="deleteon">Delete</button></li> <li>原先的HTML元素click<button class="deleteclick">Delete</button></li> </ul> </div> </body> <script type="text/javascript"> $("#newclick").click(function(){ $(".li").append('<li>動態(tài)添加的HTML元素click<button class="deleteclick">Delete</button></li>'); }); $("#newon").click(function(){ $(".li").append('<li>動態(tài)添加的HTML元素on<button class="deleteon">Delete</button></li>'); }); $(".delete").click(function(){ $(this).parent().remove(); }); $(".li").on('click', ".deleteon", function(){ $(this).parent().remove(); }) $(".deleteclick").click(function(){ $(this).parent().remove(); }); </script> </html>
感謝各位的閱讀!看完上述內(nèi)容,你們對jquery中on()與click()有哪些區(qū)別大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。