Jquery 監聽click事件,只觸發一次,第二次點擊就失效


Jquery 監聽click事件,只觸發一次,第二次點擊就失效
只觸發一次的寫法
解決方案

案例以class為選擇器,也可以換成id
只觸發一次的寫法
$(".fc-prev-button").click(function(){})
或
$(".fc-prev-button").on(“click”,function(){});

解決方案
$(document).on(“click”,".fc-prev-button",function(){

 

 

jquery不支持on是因為jquery1.7以前的版本不支持on,而jQuery版本1.7起,on()方法就是bind()、live() 和delegate()方法的新替代品,其解決辦法就是更新jquery版本即可。

本文操作環境:windows7系統、jquery3.2.1版本、Dell G3電腦。

jquery不支持on()方法嗎?jquery1.7以前的版本不支持on,jquery1.7以后的版本支持on。自jQuery版本1.7起,on()方法是bind()、live() 和delegate()方法的新的替代品。

on() 方法在被選元素及子元素上添加一個或多個事件處理程序。

自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。該方法給 API 帶來很多便利,我們推薦使用該方法,它簡化了 jQuery 代碼庫。

注意:使用 on() 方法添加的事件處理程序適用於當前及未來的元素(比如由腳本創建的新元素)。

語法

$(selector).on(event,childSelector,data,function)
參數:

event 必需。規定要從被選元素移除的一個或多個事件或命名空間。由空格分隔多個事件值,也可以是數組。必須是有效的事件。

childSelector 可選。規定只能添加到指定的子元素上的事件處理程序(且不是選擇器本身,比如已廢棄的 delegate() 方法)。

data 可選。規定傳遞到函數的額外數據。

function 可選。規定當事件發生時運行的函數。

示例:

<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("p").on("click",function(){
    alert("段落被點擊了。");
  });
});
</script>
</head>
<body>
<p>點擊這個段落。</p>
</body>
</html>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM