前端:移動端和PC端的區別

  在阿里的幾回面試中,老是被問到移動端和PC端有什麼區別,當時回答的時候主要是回答了在兼容性、網速、適配、頁面佈局等方面的不一樣,可是仍是很不繫統,因此這裏作一個總結。前端

 

第一: PC考慮的是瀏覽器的兼容性,而移動端開發考慮的更多的是手機兼容性,由於目前無論是android手機仍是ios手機,通常瀏覽器使用的都是webkit內核,因此說作移動端開發,更多考慮的應該是手機分辨率的適配,和不一樣操做系統的略微差別化。jquery

 

第二: 在部分事件的處理上,移動端多出來的事件是觸屏事件,而缺乏的是hover事件。 另外包括移動端彈出的手機鍵盤的處理,這樣的問題在PC端都是遇不到的。 android

 

 

第三: 在佈局上,移動端開發通常是要作到佈局自適應的,我使用的一直是rem佈局,感受很好。ios

 

 

第四: 在動畫處理上,PC端因爲要考慮IE的兼容性,因此一般使用JS作動畫的通用性會更好一些,可是CSS3作了很大的犧牲, 而在手機端,若是要作一些動畫、特效等,第一選擇確定是CSS3 既簡單、效率又高web

 

第五:  微信的一些接口組好能去實現一遍,熟悉一下確定是有好處的,好比經過微信分享文章,title、description、icon等圖標的配置,這些仍是要會的。面試

 

第六: 百度地圖的一些API接口,也得去實現一下,這些對於移動端來講,LBS是一個很是重要的特性,因此地圖這塊確定是要了解的,在加上百度地圖這塊已是一個比較成熟的平臺了,因此學起來也比較容易。瀏覽器

 

 

第七: CSS3的動畫必定要比較熟練,這在移動端用的仍是比較多的。 緩存

 

 

第八: 通常pc端用jquery,移動端用zepto,由於移動端的流量仍是比較重要的, 因此引入的資源或者插件,能小則小,一個30k的資源和一個80k的資源,在移動端的差異仍是挺大的。性能優化

而未壓縮的jquery是262kb, 壓縮的jquey是83kb,可見二者的差異之大。微信

 

 

第九:最好能掌握一套完整的前端開發架構,好比模塊化、打包、壓縮、緩存、有條件的還能夠作一下自動化測試等等,比較好用的有fis,另外,想要快速提高本身的前端開發技術,鑽研前端架構這塊是一個很是好的方向。

 

第十: 性能優化,包括首屏的打開速度、用戶響應延遲、渲染性能、動畫幀率等在手機上都須要特別注意。

 

第十一: 好比在手機上的300ms的延遲,這在PC端是沒有的,若是咱們但願作成webapp,那麼天然就不須要這300ms的延遲,因此可使用hammer-time.js來移除這300ms的延遲。

 

 

 

 

 

 

 

本文整理自:知乎

相關文章
相關標籤/搜索