修改f(selector) 裡的判斷,新增domready
我們知道在jquery中還有一種選擇器寫法
$(function() );
在dom載入完畢後馬上就執行,這樣的方法會比onload更快,所以domready對於我們來說一定是必不可少的
我們在init方法中要新增以下判斷
if(!selector)
if (typeof selector == 'object')
this.length = selector.length;
return this;
} else if (typeof selector == 'function')
首先selector可能為object的情況,比如傳入的是原生dom物件,dom陣列物件. 另外要記得轉為陣列`var selector = [selector];
因為有可能是乙個元素比如是window,document等否則沒法迴圈
然後selector如果是function那我們就認為他是domready
ps:在這我判斷的並沒有非常的全面,僅僅具備了基礎功能
kodo.ready = function(fn) ,false);
doc.removeeventlistener('domcontentloaded',fn,true);
};
然後這個是ready的原始碼,由於我們只相容高階瀏覽器所以僅僅需要這樣寫即可.
既然你都看到這了,還不給我乙個star說得過去麼你!! :(
可想造乙個屬於你自己的jquery庫?(三):
自己實現乙個簡單的ArrayList
自己簡單的實現arraylist的 註解很清楚了,寫了arraylist的add obj 方法 remove index 方法,get index 方法,自己定義迭代器,自己進行迭代 迭代器介面 public inte ce iterator集合 的實現 version description 自己...
自己實現乙個簡單的hashmap
這個hashmap實現方式應該是jdk1.7的,在資料量小的時候和jdk1.8實現的差不多,不過我這個沒有採用鍊錶長度8時轉化紅黑樹增加查詢效率,在擴容時也是全部元素重新hash,計算新的位置,所以如果大資料量的時候,複製到新的陣列就會比較慢.jdk8裡面對複製到新的陣列也是有優化的,我這裡就沒做了...
自己動手實現乙個簡單的React
為了更好的理解react,我決定讀preact的原始碼,preact是乙個非常小的框架,同時也和react的實現原理以及api一樣,幾乎可以很好代替react。雖然還是有一些差異的。但是使用的時候幾乎不會有什麼違和感。看原始碼總是不夠過癮,於是做了乙個偉大的決定就是自己親手去寫乙個react,畢竟p...