使用closest替換parent

2022-03-25 02:46:43 字數 536 閱讀 4637

盡量不要使用parent去獲取dom元素,如下**:

var $activerows = $this.parent().parent().children(".active");

這樣的**擴充套件性不好,一旦dom結構發生改變,這裡的邏輯分分鐘會掛,如某天你可能會套了個div用來清除浮動,但是沒想到導致有個按鈕點不了了就坑爹了。

應該用closest,如:

var $activerows = $this.closest(".order-list").find(".active");

直接定位和目標元素的最近共同祖先節點,然後find一下目標元素就好了,這樣就不會出現上面的問題,只要容器的類沒有變。如果你需要處理非自己的相鄰元素,可以這麼搞:

$this.closest("li").siblings("li.active").removeclass("active");

$this.addclass("active");

linux vi替換的使用

esc 命令模式與插入模式的切換 一 vi查詢 當你用vi開啟乙個檔案後,因為檔案太長,如何才能找到你所要查詢的關鍵字呢?在vi裡可沒有選單 查詢,不過沒關係,你在命令模式下敲斜桿 這時在狀態列 也就是螢幕左下腳 就出現了 然後輸入你要查詢的關鍵字 敲回車就可以了。如果你要繼續查詢此關鍵字,敲字元n...

unidac巨集替換使用

對於query一類的sql查詢控制項來說,macro巨集替換功能真是乙個好東西。比如,您可以設定乙個叫ztname的巨集來代表當前帳套名稱,這樣所有需要新增帳套where條件的地方,都可以使用這個巨集來代替。其實不僅unidac提供了巨集替換的功能,就算是十年以前的rxlib系列控制項,也已經提供了...

unidac巨集替換使用

對於query一類的sql查詢控制項來說,macro巨集替換功能真是乙個好東西。比如,您可以設定乙個叫ztname的巨集來代表當前帳套名稱,這樣所有需要新增帳套where條件的地方,都可以使用這個巨集來代替。其實不僅unidac提供了巨集替換的功能,就算是十年以前的rxlib系列控制項,也已經提供了...