10.3 表单控件 <input type='text/password/checkbox/radio/submit/image/reset/button/email'>...</input>
<input type='url/search/tel/number/range/color'>
10.8 input.setCustomValidity(val) 当val不为空字符串时,弹出val字符提示框。
10.9 multiple属性 添加后可以在同一个字段里输入多个电子邮件地址,多个邮件地址之间只能用逗号分隔。
10.10 datalist元素
10.11 progress元素 进度条 ,meter元素计量条
10.12 command元素工具条,menu元素菜单
10.13 contentEditable=true时 编辑元素。designMode属性编辑页面。
11、audio元素 ,video元素
11.1 src属性:文件url
11.2 controls属性:是否包含基本的播放控件。
11.3 preload属性:auto/metadata/none。auto自动预加载。none不预加载。metadata先加载音频文件开头数据。
11.4 autoplay属性 :加载完成后自动播放。
11.5 loop属性:设置循环播放。
11.6 video独有属性:width/height/poster属性。
poster属性设置替换视频的图片,出现情况:(1)视频第一帧未加载完成。(2)把preload属性设置为none。(3)没有找到指定的视频文件。
11.7 嵌套source元素,提供多种格式。
例:<audio>
<source src='...' type='....'>
<source src='...' type='....'>
</audio>
11.8 audio元素,video元素在浏览器中的兼容性处理。
11.9 play(),pause(),canPlayType()。 canPlayType()传入mime类型,返回:(1)空字符串,表示浏览器不支持传入的类型。(2)prebably,表示浏览器支持。(3)maybe,表示希望浏览器可以。canPlayType()返回值不能保证真的可以播放,还要考虑:(1)容器编码器是否受浏览器支持。(2)浏览器是否支持编码设置。
11.10 js中playbackRate属性:播放速度 1:1倍速度播放。
11.11 currentTime当前播放时刻,duration总播放时间,onTimeUpdate事件:帧监听事件?。
12、 canvas元素
12.1 getContext(str:string)、moveTo(x,y)、lineTo(x,y)、stroke()、lineWidth、strokeStyle、lineCap、beginPath()、closePath()、fillStyle、fill()、lineJoin、fillRect(x,y,width,height),strokeRect(x,y,width,height)
(1)getContext(str) 获取上下文 str="2d"/"3d"
(2)moveTo(x,y) 画笔移动x,y位置
(3)lineTo(x,y) 连接到x,y位置
(4)stroke() 执行线条绘制
(5)lineWidth 线条宽度
(6)strokeStyle 线条样式
(7)lineCap 设置线条端点笔触。butt/round/square。默认值:butt 方头;round圆头;square加长方头,即在线头的两头各增加一半线宽的长度方头。
(8)beginPath() 重新绘制线段。
(9)closePath() 关闭路径。该方法会自动在最后一个绘制点与绘制起点间绘制一条线。
(10)fillStyle 填充样式。
(11)fill() 执行填充。
(12)lineJoin 设置线段交点的形状。mitre/round/bevel 。默认值:mitre锐角斜接;round圆头;bevel平头斜接。
(13)fillRect(x,y,width,height) 绘制矩形.
(14)strokeRect(x,y,width,height) 绘制矩形框。
12.2绘制曲线。
绘制圆弧:arc(centerX,centerY,radius,startAngle,endAngle);
绘制介于两条切线之间的圆弧:artTo(x1,y1,x2,y2,radius);
绘制二次贝塞尔曲线:quadraticCurveTo(controlX,controlY,endX,endY);
绘制三次贝塞尔曲线:bezierCurveTo(controlX1,controlY1,controlX2,controlY2,endX,endY);
12.3 drawImage()
语法1:drawImage(img,x,y)
语法2:drawImage(img,x,y,width,height);
语法3:drawImage(img,sx,sy,swith,sheight,x,y,width,height);
12.4文本填充
12.5阴影效果
12.6填充图案 createPattern(img,repeat-type)
12.7渐变填充 createLinearGradient,createRadialGradient。
createLinearGradient(sx,sy,ex,ey);
createRadialGradient(x0,y0,r0,x1,y1,r1)
13 CSS
先列出兼容性最好的属性,然后再列出新属性,以覆盖之前的属性。
13.1开发商前缀:
-moz- FireFox
-webkit- Chrome和Safari
-ms- Internet Explorer
-o- Opera
13.2@font-face{}注册字体
@font-face{//注册字体
font-family: 'fontname'; //定义字体名字
src:url('fonttype');//url(url:string)在当前位置下载一个文件
src:local('fonttype1url'),//local('')告诉浏览器字体名字
}
@media (media-query-property-name:value){
/**/
}
@media (max-width:480){
/***/
}
@media (condition0) and (condition1)...{
/***/
}
例子 1
border-radius:2em;
等价于:
border-top-left-radius:2em; border-top-right-radius:2em; border-bottom-right-radius:2em; border-bottom-left-radius:2em;
例子 2
border-radius: 2em 1em 4em / 0.5em 3em;
等价于:
border-top-left-radius: 2em 0.5em; border-top-right-radius: 1em 3em; border-bottom-right-radius: 4em 0.5em; border-bottom-left-radius: 1em 3em;
selectorBox{
background:linear-gradient(top,white,blue);
}
selectorBox{
background:linear-gradient(top left,white,lightblue)
}
selectorBox{
linear-gradient(top,red,orange,yellow)
}
selectorBox{
liner-gradient(top red 0%,orange 20%,yellow 80%,violet 100%)
}
语法
transform: none|transform-functions;
获取键值:localStorage.getItem(key)
删除键值对:localStorage.removeItem(key)。
清除所有键值对:localStorage.clear()。
获取localStorage的属性名称(键名称):localStorage.key(index)。
还有一个和普通对象不一样的属性length:
获取localStorage中保存的键值对的数量:localStorage.length。
window.onStorage 响应存储修改:(1)向存储添加新数据;(2)修改已有数据;(3)删除或清除数据。
JSON.stringify(obj),JSON.parse(string)