今天準備把$.fn
上的函式對照 api 文件過一下。由於函式過多,就不一一記錄了,就把覺得重要的記錄下來吧。
英文版:
中文版:
1、直接繼承原聲js的幾個方法
foreach: emptyarray.foreach,
reduce: emptyarray.reduce,
push: emptyarray.push,
sort: emptyarray.sort,
splice: emptyarray.splice,
indexof: emptyarray.indexof,
2、concat
concat:
function()
return concat.
(zepto.
isz(
this)?
this
.toarray()
:this
, args)
}
如果發現 value 是 zepto 物件,就把它轉成陣列。toarray
函式內部大概用.slice.call()
的方式把類陣列轉為陣列,es6中已經有array.from
方法可以實現同樣的功能了哈。
3、map
map:
function
(fn)))
}$.map=
function
(elements, callback)
else
for(key in elements)
return
flatten
(values)
}
這裡$.map(this, function(el, i))
得注意下
情況一:$.map(, function(value, key))
,value
在前,key
在後。
情況二:$('xx').map(function(key, value))
這種的,key
在前,value
在後。
fn.call(el, i, el)
看這就可以知道,將引數做了調換。第乙個el
是上下文。後面兩個引數就是key 和 value
的值了。
4、ready
ready:
function
(callback),0
)else
document.
addeventlistener
("domcontentloaded"
, handler,
false
) window.
addeventlistener
("load"
, handler,
false)}
return
this
}
文件載入的幾個狀態:
大概的執行順序:
這裡為了相容,做了很多處理。目的是為了在dom樹構建完成的第一時間就能執行**。
如果支援 domcontentloaded 事件,那最好不過。
如果不支援(ie),就只能通過檢測 doscroll 或者 監聽文件載入的狀態來判斷頁面dom樹是否已經構建完成。
簡單寫個例子驗證了下:
document.
addeventlistener
('readystatechange'
,function()
if(document.readystate ===
'complete')}
);window.
addeventlistener
('domcontentloaded'
,function()
)window.
addeventlistener
('load'
,function()
)
今天就到這了,下篇繼續。 Irrlicht引擎原始碼剖析 第三天
今天開始看include core部分,首先開啟irrmath.h,該檔案在core命名空間裡定義了4個常數,如浮點數比較時的捨入精度,圓周率,以及用於角度與弧度之間轉換的常數值。接著看vector2d.h,該檔案實現了乙個2d向量的模板類,以其相關方法的定義。因為該類中的normalize 方法的...
第三天,努力!!
第三天了,不錯不錯,基本上按自己的計畫進行著,雖然工作還是沒找到,不過也不再那麼的怕了,慢慢來吧,其實也沒太多時間了 今天早上十點才,真的覺得自己太不像話了,不過我一覺醒來就那個時候了,我的手機每天的鬧鐘是7 30不過好像從來聽不見它響,哈哈 明天希望能早點起,明天北京工體有乙個大型的招聘會,可以去...
杭州第三天
一樣的時間起床,一樣的時間去吃早飯,坐在一樣的位置享受完幾乎一樣的陽光和一根煙以後,我開始了在杭州ut的又一天工作。上午按照計畫重新安裝oracle資料庫,由於一邊安裝一邊給旁邊的兩個同事作簡單的解釋,所以到了在中午吃飯以前只是安裝完了軟體部分。ut的食堂有兩層,每個月的餐費都是直接打入員工卡中,所...