別再迷信 zepto 了

2022-01-11 18:34:05 字數 1209 閱讀 3345

希望網上公開課的老師們不要再講移動端網頁用zepto了,坑了無數鳥啊 ~~~。

1、自己/公司/專案組所寫和所積累(網上下的)的js函式都是以jquery外掛程式的寫法來寫的,如果要換到zepto上的話那麼每個都要改一點。而且通常都是要同時做pc端和手機端,pc端無疑是要用jquery,如果手機端用zepto,就會產生兩份js外掛程式庫,大大增加了維護成本和難度。

2、有一部分實用的api被裁剪了,讓程式設計變得困難,本來一句話搞定的事,要自己多寫幾句才能搞定,一開始還不知道是怎麼報的錯。

4、有乙個**對這幾個庫進行效能測試,結果是jquery比zepto的執行效率要高,這就讓我懷疑zepto的水平了,明明是裁剪的、為移動優化的但效能卻更差。效能測試**鏈結》(說明:這個測試**中,得出的數值越大說明效率越高效能越好,紅色底為效率最低,綠色底為效率最高,我截圖只截了最常用的兩個寫法的效率,蘋果和安卓的也測了都是zepto的比jquery的低,約為60%)

chrome下:

firefox下:

5、乙個在核心領域核心功能上沒有足夠優勢的庫,它作者的水平是否值得信賴?它還會為以後埋下多少坑?

6、理論上說zepto的tap事件會比click事件少了那300毫秒的延遲,但一般手機端的點選事件基本都要ajax請求或者跳轉頁面,相比網路請求的延遲來說這300毫秒微不足道。而且jquery也有相應的外掛程式。反正在實際使用中並沒有感到那傳說中300毫秒的不順暢。最近了解到說安卓4.1以上meta標籤設定禁止縮放就可以讓瀏覽器禁用300ms的延時了。

7、zepto使用touch相關的事件模擬出tap、longtap等事件,目的為解決click事件的300ms 延時,但有個很大的問題是tap事件會「穿透」,「穿透」又會導致一系列問題。業內有個辦法是使用乙個fastclick的庫,用回click事件。>>更多關於fastclick和300ms延時

8、如果一些外掛程式需要jquery而並不適應zepto,但專案主要用zepto,那麼就很可能會引入了兩個庫。很多事件沒處理好的話就會觸發兩次,大大增加了填坑複雜度,而不是花精力去關注真正的業務邏輯。

有些東西就是曇花一現,開始看起來很驚豔,但實際用起來到處是坑。zepto,也只是曇花一現而已,或許根本就不是一支曇花而是一朵奇葩。

別再怪裁判了

昨天的亞洲盃決賽我正好有事沒看,今天看了新聞據說那個科威特的裁判很黑,說日本的第二個進球是手球,後來不知道怎麼說著說著就成了日本的三個進球都有問題了。我當然是中國隊的球迷,可是很看不慣每次輸球 都幫著找裁判的問題,調查這個裁判的來歷,歷數他以前的 罪行 煽起球迷對裁判的怒不可遏的情緒,不經意間就把球...

夠了,別再開發更多的App了!

佔據了我手機螢幕的大多數應用中我能記住一部分,那是因為我知道開發者是誰,有些就是我的朋友,不過杯具的是,很多我從來都沒用過。某些時候我是很希望我去用,因為這會讓我的那些開發應用的朋友感到開心,也會讓世界更美好。如果bump的存在不能證明什麼,那麼超多的solomo應用基本是在跟sms競爭。為什麼要多...

夠了,別再開發更多的App了!

佔據了我手機螢幕的大多數應用中我能記住一部分,那是因為我知道開發者是誰,有些就是我的朋友,不過杯具的是,很多我從來都沒用過。某些時候我是很希望我去用,因為這會讓我的那些開發應用的朋友感到開心,也會讓世界更美好。如果bump的存在不能證明什麼,那麼超多的solomo應用基本是在跟sms競爭。為什麼要多...