• 技术文章 >web前端 >H5教程

    html5新增了什么

    青灯夜游青灯夜游2021-11-18 11:55:02原创137

    html5新增的特性:1、语义化标签(header、footer、nav等);2、webStorage储存机制;3、history对象;4、表单类型(email、tell、date等);5、媒体元素video和audio;6、canvas。

    本教程操作环境:windows7系统、HTML5版、Dell G3电脑。

    HTML5 是下一代的 HTML, 将成为 HTML、XHTML 以及 HTML DOM 的新标准。

    HTML5 是 W3CWHATWG 合作的结果。

    为 HTML5 建立的一些规则:

    浏览器支持

    最新版本的 Chrome、Firefox、Safari以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。国内的 遨游浏览器(Maxthon),以及基于IE或Chromium(Chrome的工程版或称实验版)所推出的360浏览器、搜狗浏览器、QQ浏览器、猎豹 浏览器等国产浏览器同样具备支持HTML5的能力。

    新特性

    HTML5 中新增的一些有趣的新特性:

    1、语义化标签

    header footernavasidesectionmeautemplatearticleaudiovideocanvas

    2、webStorage 储存机制 sessionStoragelocalStorage

    webStorage: 使用HTML5可以在本地存储用户的浏览数据。早些时候,本地存储使用的是 cookie。但是Web 存储需要更加的安全与快速,这些数据不会被保存在服务器上,但是这些数据只用于用户请求网站数据上。它也可以存储大量的数据,而不影响网站的性能。数据以 键/值 对存在, web网页的数据只允许该网页访问使用。

    Web Storage又分为两种: sessionStorage 和localStorage ,即这两个是Storage的一个实例。从字面意思就可以很清楚的看出来,sessionStorage将数据保存在session中,浏览器关闭也就没了;而localStorage则一直将数据保存在客户端本地。其API提供的方法有以下几种:

    setItem (key, value) ——  保存数据,以键值对的方式储存信息。
    
    getItem (key) ——  获取数据,将键值传入,即可获取到对应的value值。
    
    removeItem (key) ——  删除单个数据,根据键值移除对应的信息。
    
    clear () ——  删除所有的数据
    
    key (index) —— 获取某个索引的key

    localStorage的生命周期是永久性的。假若使用localStorage存储数据,即使关闭浏览器,也不会让数据消失,除非主动的去删除数据,使用的方法如上所示。localStorage有length属性,可以查看其有多少条记录的数据。使用方法如下:

    var storage = null;                          //判断浏览器是否支持localStorage
        if(window.localStorage){
            storage.setItem("name", "Rick");     //调用setItem方法,存储数据
                alert(storage.getItem("name"));  //调用getItem方法,弹框显示 name 为 Rick
                storage.removeItem("name");      //调用removeItem方法,移除数据
                alert(storage.getItem("name"));  //调用getItem方法,弹框显示 name 为 null
        }

    sessionStorage 的生命周期是在浏览器关闭前。也就是说,在整个浏览器未关闭前,其数据一直都是存在的。sessionStorage也有length属性,其基本的判断和使用方法和localStorage的使用是一致的。需要注意的有以下几点:
    (1) 页面刷新不会消除数据;
    (2) 只有在当前页面打开的链接,才可以访sessionStorage的数据;
    (3) 使用window.open打开页面和改变localtion.href方式都可以获取到sessionStorage内部的数据;

    3、history 对象

    history 对象保存着用户上网的历史记录,从窗口被打开的那一刻算起。

    使用 go( ) 方法可以在用户的历史记录中任意跳转,可以向后,也可以向前。

    这个方法接受一个参数,表示向后或向前跳转的页面数的一个整数值。

    负数表示向后跳转(类似于单机浏览器的“后退”按钮)

    正数表示向前跳转(类似于单机浏览器的“前进”按钮)

    history.go(-1) // 后退一页 
    history.go(1) // 前进一页 
    history.go(2) // 前进两页

    还可以给go()方法传递一个字符串参数,此时浏览器会跳转到历史记录中包含该字符串的第一个位置-----可能前进,也可能后退。具体看哪个位置最近。 如果历史记录中不包含该字符串,那么这个方法什么也不做

    history.go('wrox.com') // 调到最近的 wrox.com 页面

    也可以使用两个简写方法 back( ) 和 forward( ) 来代替 go( ) 。这两个方法都可以模仿浏览器的“后退”和“前进”按钮。

    history.back() // 后退一页
    history.forward() // 前进一页

    4、表单元素的升级

    传统的表单元素:form、laber、textarea、select、button...

    input(text、password、radio、checkbox、file、submit、reset、button)

    Html5给input新增加一些类型(search、email、number、tell、range、color、date)

    升级:给表单元素新增加属性placeholder(给表单元素设置提示信息)

    升级:提供了新的下拉框方式

    5、多媒体

    用于回放的 video 和 audio 元素

    6、用于绘画的 canvas

    <canvas>定义图形,绘制路径,矩形,圆形,字符以及添加图像的方法 。

      首先创建canvas元素,并规定元素的id、宽度和高度撒的:

          <canvas id="myCanvas" width="200" height="100"></canvas>
     然后通过javas来绘制。Canvas元素本身没有绘图能力,所有的绘制工作必须在javascript内部完成渐变。
          <script type="text/javascript">
              var c=document.getElementById("myCanvas");
              var cxt=c.getContext("2d");
              cxt.fillStyle="#FF0000";
              cxt.fillRect(0,0,150,75);
          </script>

      JavaScript 使用 id 来寻找 canvas 元素:

          var c=document.getElementById("myCanvas");

      然后,创建 context 对象:

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

      getContext("2d") 对象是内建的 HTML5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

      下面的两行代码绘制一个红色的矩形:

          cxt.fillStyle="#FF0000";
          cxt.fillRect(0,0,150,75);

      fillStyle 方法将其染成红色,fillRect 方法规定了形状、位置和尺寸。

      下面的两行代码绘制一条直线:

          cxt.moveTo(100,100);

          cxt.lineTo(200,200);

      下面的一行代码是画一个圆:

          cxt.arc(70,18,15,0,Math.PI*2,false);

      这些属性值分别对应的是什么,70,18分别是X轴和Y轴,15是这个圆的半径,0是角度,Math.PI*2是圆周率,false代表顺时针而true是逆时针。

      颜色的渐变效果也是可以实现的:

        <script type="text/javascript">
            var c=document.getElementById("myCanvas");
            var cxt=c.getContext("2d");
            var grd=cxt.createLinearGradient(0,0,175,50);
            grd.addColorStop(0,"#FF0000");
            grd.addColorStop(1,"#00FF00");
            cxt.fillStyle=grd;
            cxt.fillRect(0,0,175,50);
         </script>

      还有一些其他效果:

        曲线quadraticCurreTo

        字体fillText

    推荐教程:《html视频教程

    以上就是html5新增了什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:html5 新特性
    上一篇:h5新增标签audio与video的使用 下一篇:html5离线存储有哪些
    php中文网线上培训班

    相关文章推荐

    • html5怎么禁止放大页面• html和html5有什么区别• html5如何播放视频• html5移除了那些元素• html5 input有新属性吗

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网