jQuery原始碼閱讀 swap()

2021-10-01 15:27:18 字數 1061 閱讀 5395

swap()

css 交換

// note: this method belongs to the css module but it's needed here for the support module.

// if support gets modularized, this method should be moved back to the css module.

swap: function( elem, options, callback, args ) ;

// remember the old values, and insert the new ones

for ( name in options )

// 得到寬度

// revert the old values

for ( name in options )

return ret; }

應用:js 獲取元素的寬度:$(".div1").get(0).offsetwidth

jquery 獲取元素的寬度:$('.div1').width()

如果元素設定了display:none那麼 js 就無法獲取到元素的寬度。

jquery中通過swap來解決。

原理:刪除並儲存元素的display:none樣式在 a 變數中,為元素設定display:block; visibility:hidden; position:absolute。這樣的效果和display:none的效果基本一樣,但是能獲取到元素的寬度,將寬度儲存在變數 b 中。之後使用變數 a 中的樣式替換元素當前樣式

cssshow = ,

get: function( elem, computed, extra ) ) :

getwidthorheight( elem, dimension, extra );

}},

注意:

jQuery原始碼閱讀筆記

一 閉包結構 作用 消除全域性汙染 採用閉包 匿名函式立即執行 的方式,傳入了window物件 只在後面暴露 和 jquery 這 2 個變數給外界 方式1 function window,undefined window 方式2 function window window,undefined 方...

《原始碼閱讀》原始碼閱讀技巧,原始碼閱讀工具

檢視某個類的完整繼承關係 選中類的名稱,然後按f4 quick type hierarchy quick type hierarchy可以顯示出類的繼承結構,包括它的父類和子類 supertype hierarchy supertype hierarchy可以顯示出類的繼承和實現結構,包括它的父類和...

jQuery原始碼閱讀2 init

總架構圖 摘自 jquery技術內幕 逐步分析 init負責解析引數selector和context的型別 selector和context共有12個分支 function init selector context rootjquery 判斷傳入的引數是否是dom節點 if selector.no...