預覽地址:預覽javascript
github源碼:源碼css
1. 網頁開發html
HTML5:BEM開發模式,BEM表明塊(Block),元素(Element),修飾符(Modifier)。java
CSS3:過渡動畫、幀動畫node
JS: 元素獲取,事件響應處理git
2. 準備github
標註工具:像素大廚web
雪碧圖拼接:gopng數組
3. 開發函數
項目骨架:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>手機</title> <link rel="stylesheet" type="text/css" href="./css/base.css"> <link rel="stylesheet" type="text/css" href="./css/index.css"> </head> <body> <div class="box"> <header class="header"> <a href="#" class="header__logo">H5頁面</a> <nav class="header__nav"> <a href="#" class="header__nav-item header__nav_item_status_active">外觀</a> <a href="#" class="header__nav-item">配置</a> <a href="#" class="header__nav-item">型號</a> <a href="#" class="header__nav-item">說明</a> <a href="#" class="header__nav-item">其餘產品</a> <a href="#" class="header__nav-item">當即購買</a> <div class="header__nav-item-tip"></div> </nav> </header> <section class="screen-1"></section> <section class="screen-2"></section> <section class="screen-3"></section> <section class="screen-4"></section> <footer class="footer"> © index.html 京ICP備13046642號 </footer> </div> </body> </html>
底部邊框2px:(利用僞元素和絕對定位)
.header__nav_item_status_active::after { position: absolute; left: 0; bottom: 0; content: ' '; display: block; height: 2px; width: 100%; background-color: #f01400; }
第一屏:
1. 滾動事件
頁面指定了DTD,即指定了DOCTYPE時,使用document.documentElement。
頁面沒有DTD,即沒指定DOCTYPE時,使用document.body。
兼容性寫法:
var scroll = document.body.scrollTop || document.documentElement.scrollTop
並且對於a連接若是不進行跳轉:
<a href="javascript:;"></a>
Javascript:僞協議,能夠經過連接來調用js函數。
或者:阻止默認事件不跳轉
e.preventDefault();
2. JavaScript自定義添加類的函數
對象:可以作到不會重複添加
// 添加類名 function addClass(element, newClass) { var className = element.className.split(' '); //字符串轉換成數組,便於遍歷轉換成對象 var classNameMap = {} for(var i=0;i<className.length;i++){ classNameMap[className[i]] = 1; } classNameMap[newClass] = 1; //新類名賦值 var className = []; for(i in classNameMap){ className.push(i); } element.className = className.join(' '); //數組轉換成字符串 }