HTML5知识

Posted uyghun科技

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML5知识相关的知识,希望对你有一定的参考价值。

html5新增的常用标签

<header></header>网站头部

<nav></nav>导航

<section></section>类似于div

<aside></aside>文件侧栏

<article></article>文章/内容

<footer></footer>网站底部

<figure></figure>独立的流内容,图像...

<figcaption></figcaption>定义figure的标题

<dialog></dialog>对话框

<embed ></embed>

视频video

<video width="500" height="500" controls="controls"></video>

controls="controls"显示控制按钮,如播放按钮

autoplay立即播放

loop播放后再次播放

preload页面加载时进行视频加载,加载完后进行播放


play()播放

pause()暂停

<input type="button" id="play" />

<video width="500" height="300" >

<source type="video/mp4"></source>

<source type="video/ogg"></source>

</video>


音频audio

<audio autoplay="autoplay" controls="controls"></auido>

muted静音

loop

src

autoplay

controls

<audio autoplay="autoplay" controls="controls"></audio>


画图标签canvas

创建画布

<canvas id="canvas1" width="500" height="500"></canvas>

定义图像,javascript来完成


画矩形,定义颜色

var div1=document.getElementById("div1");

var cxt=div1.getContext('2d'); cxt.fillStyle="#003399";//定义颜色 cxt.fillRect(0,0,100,100);//定义矩行

cxt.fillStyle="rgba(0,0,255,0.5)";//定义颜色,透明度

cxt.fillRect(200,200,200,200);


画直线

var div1=document.getElementById("div1");

var cxt=div1.getContext('2d');

cxt.moveTo(10,10);//起始位置

cxt.lineTo(200,200);//终止位置

cxt.lineTo(10,200);

cxt.stroke();//结束图形


画圆

var div1=document.getElementById("div1");

var cxt=div1.getContext('2d');

cxt.beginPath();//开始画

cxt.arc(100,100,30,0,Math.PI*2,true);//X坐标,Y坐标,半径,开始,结束,顺时针|逆时针

cxt.closePath();//结束画布

cxt.fill();//结束宣染


制作画板

鼠标按下时 -> 坐标开始 -> 移动鼠标画图 -> 鼠标松开时结束


获取画布

$(function(){

var div1=document.getElementById("div1");

var cxt=div1.getContext("2d");

cxt.lineWidth=2;//线条的宽度

cxt.strokeStyle="red";//线条颜色

var fn=false;

//鼠标按下时

$("#div1").mousedown(function(e){

//获取鼠标在容器中的坐标

var mouseX=e.pageX-$(this).offset().left;//offset()元素的偏移量

var mouseY=e.pageY-$(this).offset().top;

alert(mouseX+" "+mouseY)

yn=true;

cxt.moveTo(mouseX,mouseY);

//alert(mouseX+" "+mouseY);

});

//鼠标弹起时

$("#div1").mouseup(function(){

fn=false;

});

//鼠标移动时

$("#div1").mousemove(function(e){

mouseX=e.pageX-$(this).offset().left;//offset()元素的偏移量

mouseY=e.pageY-$(this).offset().top;

//alert(mouseX+" "+mouseY)

//alert(1);

if(yn){

cxt.lineTo(mouseX,mouseY);

cxt.stroke();

}

});

});


<canvas id="div1" style="width: 500px; height: 500px; border: 1px solid #f00;"></canvas>


地理位置:能确定用户位置

navigator.geolocation//判断浏览器是否支持地理位置获取


位置定位的方法

getCurrenPosition当前位置

watchPosition监视位置

clearWatch清除监视


getCurrenPosition(成功获取位置时执行的函数,error获取出错时执行的函数,配置项)


经度:coords.longitude

纬度:coords.latitude

海拔:coords.altitude

海拔准确度:coords.altituAcuracy

方向:coords.heading

地面速度:coords.speed


window.onload=function(){

window.navigator.geolocation.getCurrentPosition(function(position){

var lat=position.coords.latitude;//获取纬度

var long_=position.coords.longitude;//获取经度

document.getElementById("div1").innerHTML='纬度:'+lat+'经度'+long_;

},function(err){

alert("报错"+err.code);

},{

timeout:5000

})

}


桌面提醒notification

requestPermission请求通迅许可

checkPermission检查通迅许可

createNotification创建通迅


Notification.permission当前通过显示的授权状态

default:默认

granted:允许

denied:拒绝


获取用户授权之后

var notification=new Notification(title,options)

title:通知的标题

options:设置选项

body:通知的内容

tag:通知的一个识别标签

icon:通知中的显示的图片 url

image:显示的图像

data:数据

requireInteraction通知保持有将,不自动关闭


if(window.Notification){

if(Notification.permission=='granted'){

var n=new Notification('提醒信息',{

body:'1条新的信息',

icon:'img/new.png',

requireInteraction:true

})

setTimeout(function(){n.close()},3000)

}else{

Notification.requestPermission()

}

//alert(1);

}else{

alert("error");

}



本地存储localStorage和sessionStorage

localStorage没有限制的存储

sessionStorage会话存储


localStorage.i='zhangsan';

localStorage['i']='sdgdfhghg';

localStorage.setItem("i","123645");


获取

localStorage.i;

localStorage['i']

localStorage.getItem("i")


拖拽事件

拖放元素

ondragstart拖拽前触发(鼠标按开并开始拖拽)

ondrag拖拽过程中触发(连接触发)

ondragend拖拽结束时触发



目标元素

ondragenter入进目标元素(拖进)

ondrop释放鼠标触发(拖后放)

ondragleave鼠标离开目标元素(拖离)

ondragover拖动经过时(拖来拖去)


上传图片

FileReader,用于将文件读入内容,并读取文件中的数数

var reader=new FilReader()

方法

readAsBinarySting(file)读取文件为二进制

readAsDataURL(file)读取文件DataURL

readAsText(file)读取文件为文本

abort(none)中断文件读取


事件

onabort读取文件中断时触发

onerror文件出错时触发

onloadstart读取文件开始时触发

onprogress读取文件时一直触发

onload读取成功时触发

onloadend读取文件结束时触发


DataTransfer对象,存放拖放时携带的数据

setData(key,value)设置被拖数据的类型和值

files获取外部拖拽文件

getData(key)获取setData保存的值


this.result读取的结果


<div style="width: 200px; height: 200px; border: 1px solid #f00;" id="div1"></div>


var div1=document.getElementById("div1");

//拖动经过时阻止默认行为

div1.ondragover=function(e){

e.preventDefault();

}

div1.ondrop=function(e){

var file_=e.dataTransfer.files;//获取拖拽的文件

var read=new FileReader();//创建一个文件实例

read.readAsDataURL(file_[0]);//读取文件

read.onload=function(){

var img=document.createElement("img");//创建元素

img.src=this.result;//设置路径为获取到的值

document.body.appendChild(img);//向body追加img

}

e.preventDefault();

}


jquery.ui插件

$("#date").datepicker({

dateFormat:'yy-mm-dd',//设置日期格式

dayNamesMin:['日','一','二','三','四','五','六'],//指定星期几的最小格式

monthNames:['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'],//指定月份的显示

showButtonPanel:true,//显示按钮面板

closeText:'关闭',//关闭按钮文本

currentText:'今天',//today按钮文本

showOtherMonths:true,//填充没有显示的单元格

selectOtherMonths:true,//选择上个月或下个月的日期,前提是showOtherMonths:true

changeMonth:true,//选择月份下拉菜单

monthNamesShort:['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'],//显示为中文

changeYear:true//选择年份的下拉菜单

});

<input type="text" name="date" id="date" />


以上是关于HTML5知识的主要内容,如果未能解决你的问题,请参考以下文章

HTML5标签汇总及知识学习线路总结

熬夜总结了 “HTML5画布” 的知识点(共10条)

HTML5知识点总结

前端核心技术必备知识库精华资源强力推荐

整理html5知识点3

前端开发必备知识 —— HTML/HTML5