事件委托導致重復綁定多次事件
阿新 • • 發佈:2018-06-11
綁定 方法 click font page 接口 In ret btn
最近在制作分頁的時候使用事件綁定,導致ajax訪問接口成倍的增加,找了好久發現是由於多次事件綁定引起的。
//分頁功能 Sea("page").on("click",".page-btn",function(){ //如果請求頁就是當前頁,則不發出請求 if(page == Sea(this).data("page")){ return; } page = parseInt(Sea(this).data("page")); render(); })
render方法裏包括了分頁功能的事件綁定以及ajax請求,使用委托形式綁定時候,造成了多次綁定該事件,因為點擊的時候會成倍的觸發render方法。
//分頁功能 Sea("page .page-btn").on("click",function(){ //如果請求頁就是當前頁,則不發出請求 if(page == Sea(this).data("page")){ return; } page = parseInt(Sea(this).data("page")); render(); })
不進行事件委托就解決了該問題。
事件委托導致重復綁定多次事件