color:用于指定颜色的控件。
date:用于输入日期的控件(年,月,日,不包括时间)。
month:用于输入年月的控件,不带时区。
week:用于输入一个由星期-年组成的日期,日期不包括时区
time:用于输入不含时区的时间控件。
datetime:基于UTC时区的日期时间输入控件(时,分,秒及几分之一秒)。
datetime-local:用于输入日期时间控件,不包含时区。
email:用于应该包含 e-mail 地址的输入域。在提交表单时,会自动验证 email 域的值。
number: 用于应该包含数值的输入域。只能输入数字
range:用于应该包含一定范围内数字值的输入域。range 类型显示为滑动条。
search:用于输入搜索字符串的单行文本字段。换行会被从输入的值中自动移除。
tel:用于输入电话号码的控件。在移动端输入会显示数字键盘,PC端无效果
url:用于编辑URL的字段。
一、 HTML5新增的标签
(1)header nav main footer section article hgroup figure figcaption aside
video audio canvas
(2)如何让新标签兼容低版本浏览器: html5shiv.js
二、 HTML5新增的表单控件
一、表单控件的新属性
<input type="text" placeholder="" required autofocus pattern="abc" >
二、新增的表单控件
(1)<input type="email">
(2)<input type="url">
(3)数字控件: type="number"
(4) 滑动组件: type="range"
(5) 拾色器: type="color"
(6) 日期控件: type="date"
三、本地存储
1、 三种本地存储 : cookie webStorage(localStorage sessionStorage)
2、localStorage的API
(1)写入: localStorage.setItem(键,值) //值只能是字符串
localStorage.user = "123" localStorage["user"] = "123"
(2)读取 var user = localStorage.getItem("user")
var user = localStorage.user
(3)删除: localStorage.removeItem("user") localStorage.clear()
(4)修改: localStorage.setItem("user","890")
3、sessionStorage的API
sessionStorage.setItem(键,值)
sessionStorage.getItem(键)
sessionStorage.removeItem(键)
sessionStorage.clear()
**********重点**********
4、cookie webStorage(localStorage sessionStorage)三者的区别
四、离线存储
(1) *.manifest (*.appcache)
index.html <html manifest="*.manifest">
(2) 理解离线存储的更新方式
五、移动端的布局思路:
1、设备像素比(倍率) 逻辑像素尺寸 (360px 320px 375px 414px)
window.devicePixelRatio
2、 <meta name="viewport" content="width=device-width,maximum-
scale=1.0,minimum-scale=1.0,initial-scale=1.0,user-scalable=no"">
3、使用rem单位
六、地理定位
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(success,error,{
timeout: 5000
})
function success(pos){
纬度: pos.coords.latitute
经度: pos.coords.longtitude
}
}
navigator.geolocation.watchPosition(success)
七、地理定位和百度地图API的结合
八、视频,音频 <video autoplay="autoplay" controls="controls" loop="loop" poster=""
preload="preload"> <audio>
九、移动端事件:
(1) ontouchstart ontouchmove ontouchend
(2) 如何判断是否为移动端: if ("ontouchstart" in document){}
(3) 移动端事件的事件对象及常用属性
e.touches[0].clientX e.touches[0].clientY e.touches[0].target
(4) 移动端常见问题及解决方案:
a、 click事件 300ms的延迟: <1>zepto的tap事件 (2) fastclick.js
b、 zepto的tap事件有点透问题 : (1) fastclick.js
(5) zepto的touch模块: tap singleTap doubleTap longTap
swipeLeft swipeRight swipeUp swipeDown
十、swiper.js的使用 (参考官网)
十一、 canvas
(1) <canvas width="600" id="can"></canvas> 300*150
(2) var can = document.getElementById("can")
var cxt = can.getContext("2d")
cxt.beginPath()
cxt.moveTo(100,200)
cxt.lineTo(200,400)
cxt.strokeStyle = '#f00'
cxt.stroke()
cxt.clearRect(0,0,200,300)
context.globalCompositeOperation="destination-out" (了解)
Input 类型 - Date Pickers(日期选择器)HTML5 拥有多个可供选取日期和时间的新输入类型:
date - 选取日、月、年
month - 选取月、年
week - 选取周和年
time - 选取时间(小时和分钟)
datetime - 选取时间、日、月、年(UTC 时间)
datetime-local - 选取时间、日、月、年(本地时间)
Date: <input type="date" name="user_date" />