整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          移動端網站開發的tips

          移動端網站開發的tips

          每次打開,不知道寫什么,還好一個私活把pc端網站交了出去,老板還是比較滿意,下面就是移動端的了。就邊寫邊記,當筆記好了。如果認為low的請越過。感覺對自己有些幫助的,請留言或點贊謝謝!

          一、大體注意點:

          1、兼容性問題:

          當前移動端使用的瀏覽器基本上就2種,一種是Android,一種為ios,他們用的瀏覽器無非是谷歌瀏覽器和Safari瀏覽器,都是webkit內核,都支持css3,和es6。所以兼容性基本上可以不用考慮了。

          2、手勢代替鼠標事件

          因為移動設備沒有鼠標,而都是觸摸屏,所以用手勢代替鼠標事件是理所當然的事情。

          3、屏幕大小的不一定

          不可能為每一個屏幕尺寸開發一套css,所以應用響應式的開發也是水到渠成的。

          4、關于css3動畫

          現在的css3動畫在原理上使用GPU硬件加速,所以說使用css3動畫比用javascript動畫更快。

          5、移動端的js庫。

          大家都用zopto.js和angular.js,我們也沒有必要標新立異。

          二、詳細展開

          1、因為不存在兼容性問題(看到ie偷笑中...),html5和css3上吧。具體說

          ①布局使用flex布局,也可使用flex和固定像素的布局。

          ②布局單位的選擇rem(相對單位),為了更好的兼容屏幕,我們可以html根節點用屏幕的寬度 / 10(這個值你來確定,也可以為20),也更方便我們運算。

          但是也有需要固定像素的時候,比如說:你無論在pc端看文章或者看書或者是phone上看小說,眼睛對于字體的要求是一定的。一般情況下是14px。

          ③圖片問題:

          高清屏的dpr為2,這就是說如果你用100*100px的圖片,像達到100*100px的清晰度,因為高清屏幕的dpr為2,就是說它用200*200的物理像素來顯示你100*100的圖片,這就造成了圖片的模糊。也就是說如果想要達到你想要的效果,就需要用100*100dp(物理像素)來表現它。因為屏幕是我們無法控制的,所以我們只能控制圖片了。那么一個公式來表示:width=(w_dp / dpr)px;w_dp是指圖片的寬度,這樣我們就了解了,100*100的圖片我們應該用50*50來表現它,就可以達到了我們想要的效果。

          注意下,iPhone 6 plus dpr都是3了;

          ④一像素邊框問題

          由上面的第三小點,引申出第四個問題,因為dpr為2,也就是說1px邊框用2個物理像素顯示,也模糊掉了。如何解決呢?現在通用的用縮放的方式解決:

          縮放的方式解決1px邊框問題

          ⑤為了用戶體驗,使用多行文本溢出:

          多行文本溢出

          暫時先寫這么多,也參考了X課網上的許多知識點,在此說聲謝謝。

          天在一個前端群里發生了一件很有意思的事情,群成員A在群里提了一個關于行內元素排列間隙處理的問題,群成員B幫A解決了,兩個人就聊了起來,發現兩個人都是自學的前端,學歷都是普通二本。但A的月薪是10K,B的月薪只有6K。今天就借著這件事跟大家聊一下,為什么同樣是自學前端,有的人第一份工作能拿10K,有的人只能拿6K。

          在聊這個話題之前,我們先把學歷、天賦這些無法改變的因素排除在外,就說作為一個普通人該怎么做,才能讓第一份工作拿到更高的薪資。

          1. 選擇一座好城市

          城市的發展有良性循環和惡性循環。大城市基礎設施完善,工作崗位多,就會吸引更多的人才涌入,人口越多消費能力越強,就會吸引更多的資本投資,資本投資會產生更多的高薪工作機會,從而形成良性循環。而小城市則會形成人口和資本外流的惡性循環。

          所以。做前端開發的,挑選一座好城市真的非常重要,大城市起薪都高,并且成長速度也快。拿我的兩個朋友舉例,兩個人都是湖南人,都是一畢業就去了深圳,一個待了一年,覺得一線城市太累,工作壓力大,于是就回了長沙,另一個在深圳呆了5年,去年才回去。現在他們兩個在長沙的薪資,一個是18K,一個是25K。從事前端開發,我一直都是建議能去一線城市就去一線城市,不想去一線城市,最起碼也要在省會城市。

          2.找一份好的教程

          網上的教程很多,有些教程講的會比較深入,有些教程講的比較淺,學的程度不一樣,自然薪資就不一樣。舉個例子,普通教程ajax前后端交互會在學完js后直接講XMLHttp的API方法和使用, 跨域和封裝也都是只限于前端代碼部分的講解和庫的使用,而一份好的教程教程則會在這基礎上拓展HTTP理論、交互通信原理、服務端http服務器搭建、MIME、報文端口、監聽抓包、網絡業務模型、代理緩存、cookie session 鑒權認證、安全加密、Token、JWT、oauth、session管理、RESTful接口設計、協商合約、資源標識等原理規則性知識,能夠讓你真正清楚整個交互的來龍去脈 而不只是單純的抄方法 跟著教程寫代碼而已。所以,一份好的教程,也是你能否找到一份好的工作的關鍵點。

          因為很多初學者對于這個行業完全不了解,也無法區分教程的優劣。所以我整理了一套最系統的優質前端教程作為粉絲福利,只要關注我,私信我“前端”二字,我免費分享給大家。

          3.目標薪資與議價能力

          大多數初學者對于這個行業并不了解,并不知道自己的水平能夠拿多少薪資。可以在招聘網站上搜集一些能拿到10K的工作崗位,招聘需求上面需要會的東西,自己都有一定了解,那就可以投。面試前多刷刷面試題,面試后復盤總結,發現有不足的地方就補上,然后進行下一場面試。很多公司都是面試造火箭,工作擰螺絲。6k的前端和10K的前端,平常干的活差不了太多。面試問題回答得都不錯,問你期望薪資是多少,自信點,直接要10K或者是說11K就好(多報1k當做議價空間),不要說什么8-10K,這么說那就是8K了。

          4.找個有經驗的大佬帶你

          初學者對于這個行業不了解,不知道自己學怎么樣,基礎是否扎實,心里沒有一個底。有時候一個問題卡好幾個小時都無法解決,也會打擊到學習的信心。所以,一定要找個能指導你的人。這里不是說叫你參加培訓,很多機構表面上看老師都很厲害,但事實是你接觸不到這些厲害的老師,這些厲害的老師都只是錄制一個課程,課程的答疑都是助教。助教大多都是在這些機構學完找不到工作的,遇到問題也就是這個助教替你去百度,對你的幫助并不大。真正對你有幫助的一定是有個大佬帶你, 能夠根據你的情況把問題給你講解得很透徹,幫你弄清楚為什么會出現這個問題、該怎么解決這個問題。可以看看身邊有沒有從事前端開發工作的朋友,有的話可以讓他帶帶你。

          如果身邊沒有朋友是做這方面的,那就借助“網友”的力量。可以加入我們這個WEB前端開發群,里面有很多工作很多年的前端大佬,問一個問題很快就能得到答案,并且會告訴你目前欠缺哪些知識,給你分享他們的經驗,感興趣可以私信“前端”加入到我們的圈子。

          最后給大家一份系統全面的學習路線,上面的知識點只要能掌握大部分,找一份15K以上的工作就很簡單,能夠全部掌握,就能去參加大廠面試了。

          HTML/CSS3 以及工具部分:

          vscode開發工具使用、markdown文檔工具使用、瀏覽器平臺環境、標簽基礎、DTD與META

          語義化、選擇器、權重與優先級、匹配規則、浮動與清除、BFC、類名組合規則、SEO前端技巧、定位、疊加技巧、

          偽類、偽元素、盒子模型、代碼規范、性能優化、渲染原理、CSS Sprites 、 iconfont字體圖標、布局思路、布局定式

          css3動畫、 css3選擇器、 css3過渡、flex布局、背景漸變、css3實用動效、3D模塊、css3變量、em/rem/vw

          學完這些可以完成一個企業內部多頁面項目實戰(非仿站)有完整PSD與切圖



          然后就是JavaScript 部分,你需要掌握以下知識點:

          JavaScript概念、基礎認知、發展歷史、應用范圍、優缺點。

          ECMAScript

          語言概覽、語句語法、數據類型、運算符、隱式轉換、運算規則、控制流程、作用域、作用域鏈、作用域解析、js解釋引擎、字符串屬性方法、for of/for in

          數組屬性方法、對象、廣義對象概念、對象特性、存儲機制、深拷貝、對象實際應用、工廠模式、構造函數、原型、原型鏈、原型指向、封裝

          多種繼承、包裝對象、this、this指向、js數據處理、垃圾GC、閉包原理與應用、debug方法論、瀏覽器控制臺工具應用、面向對象開發、函數式開發

          純函數、遞歸函數、回調函數、組合函數、緩存函數、柯里化函數、偏函數、函數防抖與節流、高級函數、IIFE函數、模塊化

          數學對象、高級數組方法(reduce、filter、map、every、some、forEach、find、findIndex、include)等

          高級對象方法(entires、defineProperty、freeze、fromEntries、assign、keys、create、hasOwnProperty)等

          this通過bind、call、apply指向偏移、同步與異步、閉包模塊化、數據形變處理、性能處理

          DOM/BOM

          DOM對象與方法、節點與遍歷樹、DOM選擇器、DOM節點增刪改查、DOM樣式操作、DOM位置獲取與偏移、DOM對象與標簽區別、DOM虛擬化、DOM事件、

          Event對象、定時器與監聽器、事件委托、事件代理、事件分流、事件冒泡、默認行為、事件捕獲、防抖、節流、滾動、鍵盤行為、事件降頻、行為鎖機制、

          拖拽模組、碰撞檢測、距離判斷、三角函數、方向判斷、運動框架、彈性運動、重力加速度、DOM樹、CSSOM樹、渲染解析、加載、回流、重繪、瀏覽器線程與阻塞。

          BOM深入、window對象、navigator、history、screen、location、spa概念、本地傳參、日期對象使用、日期格式化封裝、隨機封裝、DOM分片容器

          JS業務應用擴展

          JSON對象、數據解析、JSON方法、模板渲染、緩存懶加載、正則表達式RegExp、元字符、修飾符、正向預查、貪婪模式、replace方法、分組與不分組、test、match與exec

          正則庫封裝、表單校驗、圖片預存懶加載、自定義封裝滾動組件、多重輪播(循環、視差、旋轉木馬)、選項卡切換、樓梯導航、吸頂導航、拖拽導航 、

          JavaScript編碼風格指南、console應用技巧

          ECMAScript5 --- ECMAScript9擴展

          版本解讀、應用環境、let、const、解構賦值、箭頭函數、對象解構、reset參數解構、class、set、get、extends、super、static、private實現、symbol、promise、proxy代理攔截、async/await

          對象新增API、數組新增API、字符串新增API、原型屬性、對象修飾、代理攔截、鏈式詢問、空值合并運算符、泡泡龍面向對象游戲開發


          HTML5 / 移動端開發 部分

          HTML5標簽與API

          HTML5概念、定義、新增特性、DTD對比、新增H5標簽、新增語義化H5標簽、H5表單

          H5拖拽事件 video、audio、fullScreen、FileReader文件流、Blob對象、sessionStorage、localStorage、

          網絡狀態、頁面生命周期、網頁狀態監聽、地理信息與定位、canvas畫布、worker多線程、Notifications桌面通知

          播放器開發 canvas交互特效開發

          移動端適配/事件

          移動端適配概念、尺寸與分辨率原理、PPI與DPI計算、DIP與DPR設備像素概念、視口viewport概念、布局視口、視覺視口、理想視口

          視口適配方案(Meta viewport)縮放設置 、screen窗口大小API、媒體查詢@media、rem適配、vw vh適配

          移動端適配方案、flexible rem方案、 vh vw方案 、復合方案、高清適配方案、移動端字體縮放解決、1px邊框問題解決、半像素線

          圖片高清適配、image-set、srcset、js拼接URL技巧、IPhonex劉海屏適配、安全區域、fit與env

          Meta權限管理、兼容優化、IOS頭部底部閃屏回退輸入框問題、輸入法空格問題、默認首字母大寫問題、滑動卡頓問題等

          終端樣式美化與訪問判斷

          Touch事件組封裝、click延遲處理、FastClick使用、禁用縮放設置理想視口


          常用類庫/工具

          jquery: 元素選擇、增刪改差、事件處理、位置獲取、動畫過渡、高級方法、特效應用

          zepto:移動端的jquery、DOM操作、移動端事件、click延遲處理、touch事件組

          基礎UI庫: layerUI 、easyUI、bootStrap、UI模塊化、UI庫使用技巧、文檔解讀、案例調試、表單系統

          iScroll、touchjs等移動端事件庫使用

          swiper:移動端網站觸摸滑動、輪播圖插件、模塊化應用、源碼解讀

          art-template: 模板引擎 模板語法、渲染方法、原生模板引擎實現

          CSS預處理:sass、less使用 stylus深入學習 、預處理語法、css編程、 Minxin 、預處理函數、繼承、嵌套

          vscode高級插件與配置 liveserver sass

          模板化應用 、預處理應用

          date-picker移動端原生組件開發

          需求分析、業務規則、技術棧選型、文件輸出規則、技術分析

          MVC模型概念與設計、業務邏輯分類

          view層適配方案 原型布局搭建 模板化生成

          工具函數開發、面向對象式業務設計 功能類日期對象開發

          交互業務封裝 模塊對接 優化設計 面向對象高級程序設計


          Nodejs與工程化開發 部分

          Node原生基礎

          Node基礎概念、NPM命令、V8引擎概念、JavaScript模塊化 CMD AMD UMD、EventLoop事件循環、同步異步、 阻塞非阻塞 、任務隊列、宏任務、微任務、

          原生Node模塊、核心模塊與require、module、觸發器events與path模塊、fs模塊、Buffer對象、URL模塊、HTTP模塊 、stream流

          Node原生封裝HTTP與文件服務器

          Node框架

          express框架使用、中間件、核心對象、路由配置、模板引擎、數據腳本、Router核心、CORS配置、錯誤處理、校驗封裝、PM2管理、nodemoon管理

          MORGAN日志處理、查詢正則捕獲、中間件開發、bodyParse等第三方中間件使用 、文件流上傳下載、文件流切分

          webpack工程化構建

          工程化概念、工程化工具介紹、webpack基礎知識、webpack配置與運行、plugin插件、loader使用、入口出口配置、模塊modules、依賴處理、dev Server

          target 、文件切分、build打包、熱處理、package管理、性能優化、測試處理 、第三方插件使用、babel等

          前后端數據交互

          HTTP通信交互原理、請求響應、MIME、URI地址、報文解析、端口、報文流、測試監聽抓包、TCP/IP握手機制、網絡業務模型

          代理、緩存、網關、隧道等概念、method與請求頭分類

          基礎XMLHTTPRequest對象方法屬性、方法、ajax異步交互 、同源策略原理

          原生js封裝ajax交互、 jquery的ajax封裝交互、jsonp跨域處理、cors跨域處理、攜帶cookie與跨域處理、代理服務器跨域處理、

          cookie驗證與通信 、axios庫的使用 代理、封裝、攔截、合并、二次封裝

          通信加密策略、數據對稱加密、數據非對稱加密、RSA加密實踐、MD5加密實踐

          登錄注冊與鑒權機制、Authenticity認證、Token認證、JWT認證、session狀態管理、 oauth認證

          RESTful接口設計

          RESTful設計原則、狀態碼設計與規范、服務器響應規則與格式、前后端接口協議制定、傳統RESTful改進

          API設計規范、 資源定位、JSON模式、合約說明、資源標識符、緩存友好API、HTTP頭管理、文檔定義、松耦合原則、一致性、重用、穩定性原則

          數據庫存儲

          MongoDB基礎概念、NoSQL與SQL、CAP定理、RDBMS、MongoDB語法、指令、監控與GUI、MongoDb驅動、Mongoose應用

          數據庫創建、集合增刪改查、文檔增刪改查、數據庫查詢、高級查詢操作、通道查詢、多條件查詢、反向篩選、索引處理、aggregate聚合管道、

          validation驗證、population聯表、middleware中間件處理、查詢ERROR類二次封裝

          博客后臺項目實戰

          數據庫設計、服務端路由搭建、接口設計與API管理、通信交互管道封裝、注冊登錄、路由導航、前端路由管理、權限管理、用戶管理、分類管理、標簽管理

          、文章管理、模塊化功能封裝、校驗庫封裝、promise鏈式行為封裝、

          異步模塊處理、SPA單頁面應用初級實現、原生集中行為控制器、模板化+模塊化+預處理+工程化實現前端頁面

          組件化封裝

          組件化基礎概念、組件設計原則、組件封裝、組件耦合與解耦、工程化+模板化+模塊化實現原生組件化功能、




          vue框架部分

          vue基礎

          vue開發準備、工具與插件、mvc mvp mvvm設計理念、原生js實現MVVM核心框架、vue設計模式、生命周期、命令與屬性、組件化

          數據驅動與雙向綁定、虛擬DOM概念原理、模板語法、條件與列表、數組監測、計算屬性、事件處理、修飾與表單、監聽器、過濾器、

          methods watch computed filter對比、組件化開發、動態組件、組件通信、高級組件通信、插槽、vue動畫 、實例對象、set、get、nextTick、vue插件

          vue工程化

          Babel、webpack配置vue、vue單文件組件、vue-cli、工程平臺處理、postCss、animate、core、socket、lodash工具、vue-cli插件、preset、靜態資源處理、

          環境變量與膜還是切換、工程化部署、工程構建

          vue Router

          vue路由概念、嵌套路由、路由視圖、動態路由、路由匹配、編程式導航、history、hash模式管理、命名視圖、重定向與別名、導航守衛、路由元信息、滾動與懶加載

          導航故障處理

          vuex

          vuex核心概念、EventBus對比、狀態管理模式、Store、state、getter、mutation、action、moudule

          vuex輔助函數與API功能、vuex環境選擇、vuex模塊化處理規則與技巧、對象風格提交方式、模塊重用等

          vue項目實戰

          vue博客項目實戰 PC + 移動端、 elementUI、vantUI、websocket聊天室、虛擬人偶、vueScroll、store、qs、nprogress、editor、

          文章分類、詞云效果、spa單頁面應用、移動PC無縫切換、完整注冊登錄、vue加密鑒權、http封裝管理、錯誤處理封裝、vuex核心狀態管理、本地存儲狀態更新、令牌處理、

          文章富文本編輯、點贊、收藏、訪問、評論、組件封裝、組件復用、組件混合、高級組件開發、復合性組件通信、vue中處理原生DOM行為、vue常見錯誤處理、

          重置vue數據響應、個人信息修改、頭像上傳、通知組件封裝、postcss應用、項目打包優化

          欲善其事必先利其器,本文重點介紹幾款web開發小工具,涉及分辨率測試、H5測試、性能測試。(PS:chrome devtools、firebug是web開發人員必須要掌握的開發工具,本文不做重點介紹。)

          分辨率統計

          web開發時,一般會有分辨率適配的需求。這時我們首先要做的是要了解當下主流分辨率,以便做重點測試。相關數據可以參考【百度分辨率統計】。在線地址:http://tongji.baidu.com/data/screen/

          分辨率效果查看

          頁面合成時,我們希望能同時看到不同分辨率下的頁面效果,推薦【響應式設計開發工具】。在線地址:http://www.coolrabbit.xin/blogs/tool_responsive/index.html

          分辨率檢測

          真機測試發現問題時,我們需要獲取真機的分辨率信息,此工具不僅可以查看分辨率,還可以查看dpr等信息。在線地址:https://quirksmode.org/m/tests/widthtest_vpdevice.html

          Html5支持度統計

          在使用一些h5新特性時,有必要了解下此特性的兼容情況,同時此工具可以以國家為單位,提供支持度統計數據。在線地址:http://caniuse.com/

          html5支持度評分

          檢測當前瀏覽器對于html5的支持程度,給出相應分數、詳細說明。發現某個設備有兼容性問題時,可以運行下來定位原因。在線地址:http://html5test.com/

          性能評分工具

          非常優秀的一款網頁性能評分工具,性能標準參考了google的PageSpeed,yahoo的Yslow。大家可以用下此工具,看下自己做的項目能得多少分,有哪些地方可以優化,尤其是我紅色標出的4個tab,需要重點看下。在線地址:https://gtmetrix.com/

          其他小工具

          • 二維碼生成/解碼

            http://tool.oschina.net/qr/

          • 正則測試

            http://tool.oschina.net/regex/

          • 加解密

            http://tool.oschina.net/encrypt/

          • 圖片壓縮

            https://tinypng.com/

          • 屏幕取色工具

            https://colorpix.en.softonic.com/

          如果你也有不錯的工具,歡迎一起分享。


          主站蜘蛛池模板: 精品人妻码一区二区三区| 人妻无码一区二区三区AV| 一区二区传媒有限公司| 精品乱人伦一区二区| 一区二区在线电影| 一区二区三区国模大胆| 麻豆文化传媒精品一区二区| 一区二区三区精品视频| bt7086福利一区国产| 亚洲日韩激情无码一区| 在线电影一区二区| 亚洲日本乱码一区二区在线二产线| 日韩精品无码久久一区二区三| 亚洲蜜芽在线精品一区| 日本一区二区三区高清| 国产成人免费一区二区三区| 中文字幕一区一区三区| 国产麻豆精品一区二区三区v视界| 日韩精品一区在线| 无码人妻一区二区三区兔费| 无码人妻精品一区二区三区久久 | 天天爽夜夜爽人人爽一区二区 | 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产精品无码一区二区在线观一| 国产精品一区二区不卡| 国产在线一区二区三区| av无码一区二区三区| 免费精品一区二区三区在线观看| 无码精品人妻一区二区三区免费看| 亚洲人成网站18禁止一区| 国产福利日本一区二区三区| 亚洲中文字幕在线无码一区二区| 中文字幕一区日韩在线视频| 日韩一区二区精品观看| 午夜爽爽性刺激一区二区视频| 中文字幕人妻AV一区二区| 色偷偷av一区二区三区| 久久se精品动漫一区二区三区| 国产亚洲情侣一区二区无| 夜夜精品无码一区二区三区| 秋霞日韩一区二区三区在线观看|