格式 IE Firefox Opera Chrome Safari
Ogg No 3.5+ 10.5+ 5.0+ No
MPEG4 9.0+ No No 5.0+ 3.0+
WebM No 4.0+ 10.6+ 6.0+ No
Internet Explorer 8 不支持 video 元素。在 IE 9 中,将提供对使用 MPEG4 的 video 元素的支持。
control 属性供添加播放、暂停和音量控件。
包含宽度和高度属性也是不错的主意。
与
之间插入的内容是供不支持 video 元素的浏览器显示的:
Ogg 音频文件,适用于Firefox、Opera 以及 Chrome 浏览器。
要确保适用于 Safari 浏览器,音频文件必须是 MP3 或 Wav 类型。
audio 元素允许多个 source 元素。source 元素可以链接不同的音频文件。浏览器将使用第一个可识别的格式:
Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5 支持拖放。
注释:在 Safari 5.1.2 中不支持拖放。
<canvas id="myCanvas" width="200" height="100">canvas>
<script type="text/javascript">
//JavaScript 使用 id 来寻找 canvas 元素:
var c=document.getElementById("myCanvas");
//创建 context 对象:getContext("2d") 对象是内建的 HTML5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
var cxt=c.getContext("2d");
//下面的两行代码绘制一个红色的矩形:fillStyle 方法将其染成红色,fillRect 方法规定了形状、位置和尺寸。
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
script>
<script>
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="Geolocation is not supported by this browser.";}
}
function showPosition(position)
{
x.innerHTML="Latitude: " + position.coords.latitude +
"
Longitude: " + position.coords.longitude;
}
script>
<script type="text/javascript">
localStorage.lastname="Smith";
document.write(localStorage.lastname);
script>
-下面的例子对用户访问页面的次数进行计数:
<script type="text/javascript">
if (localStorage.pagecount)
{
localStorage.pagecount=Number(localStorage.pagecount) +1;
}
else
{
localStorage.pagecount=1;
}
document.write("Visits "+ localStorage.pagecount + " time(s).");
script>
刷新页面会看到计数器在增长。
请关闭浏览器窗口,然后再试一次,计数器会继续计数。
<script type="text/javascript">
sessionStorage.lastname="Smith";
document.write(sessionStorage.lastname);
script>
<script type="text/javascript">
if (sessionStorage.pagecount)
{
sessionStorage.pagecount=Number(sessionStorage.pagecount) +1;
}
else
{
sessionStorage.pagecount=1;
}
document.write("Visits "+sessionStorage.pagecount+" time(s) this session.");
script>
关闭浏览器窗口,然后再试一次,计数器已经重置了。
<html manifest="demo.appcache">
<body>
The content of the document......
body>
html>
NETWORK:
login.asp
可以使用星号来指示所有其他资源/文件都需要因特网连接:
NETWORK:
*
下面的 FALLBACK 小节规定如果无法建立因特网连接,则用 “offline.html” 替代 /html5/ 目录中的所有文件:
FALLBACK:
/html5/ /404.html
CACHE MANIFEST
# 2012-02-21 v1.0.0
/theme.css
/logo.gif
/main.js
NETWORK:
login.asp
FALLBACK:
/html5/ /404.html
重要的提示:以 “#” 开头的是注释行,但也可满足其他用途。应用的缓存会在其 manifest 文件更改时被更新。如果您编辑了一幅图片,或者修改了一个 JavaScript 函数,这些改变都不会被重新缓存。更新注释行中的日期和版本号是一种使浏览器重新缓存文件的办法。
注释:浏览器对缓存数据的容量限制可能不太一样(某些浏览器设置的限制是每个站点 5MB)。
if(typeof(Worker)!=="undefined")
{
// Yes! Web worker support!
// Some code.....
}
else
{
// Sorry! No Web Worker support..
}
i=i+1;
postMessage(i);
if(typeof(w)=="undefined")
{
w=new Worker("demo_workers.js");
}
w.onmessage=function(event){
document.getElementById("result").innerHTML=event.data;
};
当 web worker 传递消息时,会执行事件监听器中的代码。event.data 中存有来自 event.data 的数据。
w.terminate();
var source=new EventSource("demo_sse.php");
source.onmessage=function(event)
{
document.getElementById("result").innerHTML+=event.data + "
";
};
if(typeof(EventSource)!=="undefined")
{
// Yes! Server-sent events support!
// Some code.....
}
else
{
// Sorry! No server-sent events support..
}
<form action="/example/html5/demo_form.asp" method="get">
E-mail: <input type="email" name="user_email" /><br />
<input type="submit" />
form>
显示结果:
iPhone 中的 Safari 浏览器支持 email 输入类型,并通过改变触摸屏键盘来配合它(添加 @ 和 .com 选项)。
<form action="/example/html5/demo_form.asp" method="get">
Homepage: <input type="url" name="user_url" /><br />
<input type="submit" />
form>
提示:iPhone 中的 Safari 浏览器支持 url 输入类型,并通过改变触摸屏键盘来配合它(添加 .com 选项)。
Points: <input type="number" name="points" min="1" max="10" />
提示:iPhone 中的 Safari 浏览器支持 number 输入类型,并通过改变触摸屏键盘来配合它(显示数字)。
<input type="range" name="points" min="1" max="10" />
Date: type="date" name="user_date" />
datalist 元素
datalist 元素规定输入域的选项列表。
列表是通过 datalist 内的 option 元素创建的。
如需把 datalist 绑定到输入域,请用输入域的 list 属性引用 datalist 的 id:
Webpage: type="url" list="url_list" name="link" />
标签,以及以下类型的
标签:text, search, url, telephone, email, password, datepickers, range 以及 color。
标签的类型。
标签的类型。 <form action="/example/html5/demo_form.asp" method="get" id="user_form">
First name:<input type="text" name="fname" />
<input type="submit" />
form>
<p>下面的输入域在 form 元素之外,但仍然是表单的一部分。p>
Last name: <input type="text" name="lname" form="user_form" />
<form action="/example/html5/demo_form.asp" method="get">
User name: <input type="text" name="user_name" /><br />
<input type="image" src="/i/eg_submit.jpg" width="99" height="99" />
form>
标签:text, search, url, telephone, email, date pickers, number, range 以及 color。Webpage: type="url" list="url_list" name="link" />
标签:email 和 file。Select images: type="file" name="img" multiple="multiple" />
以及以下类型的
标签:text, search, url, telephone, email, password, date pickers, range 以及 color.//validate:使合法化
标签:text, search, url, telephone, email 以及 password。 Country code: type="text" name="country_code"
pattern="[A-z]{3}" title="Three letter country code" />
标签:text, search, url, telephone, email 以及 password。 type="search" name="user_search" placeholder="Search W3School" />
标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。Name: type="text" name="usr_name" required="required" />