2013-08-22 16 views
0

我使用JQuery,並且我有一組按鈕,其中所有的按鈕都具有類btnClass。其中一些(或全部)基於一些變化的條件反覆切換可見/不可見向課堂或個別元素添加回調

我想在單擊這些按鈕的任何一個時單擊事件添加回調。我有兩個選擇:

  1. 添加一個回調到所有這些靜態和前期使用類選擇:$(".btnClass").on("click", function(e) { ... });
  2. 或者動態地和單獨添加的回調按鈕時切換可見:btn.toggle(true).on("click", function(e) { ... });

表現明智,哪個更好,爲什麼?還有其他的方法比兩者都好嗎?

回答

3

表現明智,使用事件委派。與任一選項相比,它將具有更好的性能,因爲單個處理程序僅附加一次,位於已知和現有的父元素上。

.on()文檔中提供的例子中類似的:

$("#wrapper").on("click", ".btnClass:visible", function(event){ 
    alert($(this).text()); 
}); 
+1

同意。您可以在代表團中使用「.btnClass:visible」。 – markle976