欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

HTML5(一)

程序员文章站 2022-06-12 10:38:17
...

·HTML5出现了一些新的特性

1· 用于绘画的 canvas 元素

2· 用于媒介回放的 video 和 audio 元素

3· 对本地离线存储的更好的支持

4· 新的特殊内容元素,比如 article、footer、header、nav、section

5· 新的表单控件,比如 calendar、date、time、email、url、search等

 
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<canvas id="myCanvas" width="230" height="120" style="border:1px solid  darkred"></canvas>
<script type="text/javascript">
    var  c=document.getElementById("myCanvas");
    var  cxt= c.getContext("2d");

    //绘制一个红色矩形
//      cxt.fillStyle="#FF0000";
//      cxt.fillRect(0,0,150,75);


    //绘制一条线,
//      cxt.moveTo(0,0);
//      cxt.lineTo(100,80);
//      cxt.lineTo(45,30);
//      cxt.lineTo(10,29);
//      cxt.stroke();


    //绘制一个圆
//      cxt.fillStyle="blue";
//      cxt.beginPath();
//      cxt.arc(25,25,25,0,1.5*Math.PI,false);
//      cxt.closePath();
//      cxt.fill();


    //绘制渐变效果
//    var grd=cxt.createLinearGradient(0,0,200,62);
//    grd.addColorStop(0,"red");
//    grd.addColorStop(1,"white");
//    cxt.fillStyle=grd;
//    cxt.fillRect(0,0,200,62);



    //图像
    var img=new Image();

    img.src="timg1.png";
        //在画布上定位图像
  //  cxt.drawImage(img,10,0);

       //在画布上定位图像,并规定图像的宽度和高度
    //cxt.drawImage(img,10,10,160,80);

    //剪切图像,并在画布上定位被剪切的部分:
    cxt.drawImage(img,70,60,90,80,20,20,90,80);

</script>
</body>
</html>



control 属性供添加播放、暂停和音量控件。

包含宽度和高度属性也是不错的主意。

<video> 与 </video> 之间插入的内容是供不支持 video 元素的浏览器显示的

视频<video>标签: ogg,MP4,Webm

:<video src="movie.ogg" controls="controls"></video>

 controls="controls" autoplay="autoplay" loop="loop" preload="auto"  src="song.ogg"


HTML5(一)

音频<audio>标签:ogg,MP3,Wav

例如:<audio src=”song.ogg” type=”audio/ogg”></audio>  

HTML5(一)

音频<audio>标签:ogg,MP3,Wav

例如:<audio src=”song.ogg” type=”audio/ogg”></audio>  

拖放:

画布:Canvas

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方法规定了形状、位置和尺寸。

 

画线条:moveTo()起点,lineTo()指向点,stroke()完成定义的图像

 

画圆:context.arc(x,y,r,sAngle,eAngle,counterclockwise);

X,X坐标,y,y坐标,r半径,sAngle起始角度,eAngle结束角度

Counterclockwise为方向,true为逆时针,false为顺时针

fill() 方法填充当前的图像(路径)。默认颜色是黑色。

fillStyle 属性来填充另一种颜色/渐变。

arc() 方法创建弧/曲线(用于创建圆或部分圆)。

content.beginPath();//开始绘画

content.closePath();//结束绘画

 

渐变:context.createLinearGradient(x0,y0,x1,y1);

x0,y0,x1,y1分别是渐变点开始的X坐标,y坐标,结束的X坐标,y坐标

 

addColorStop() 方法规定 gradient 对象中的颜色和位置。

addColorStop() 方法与 createLinearGradient() createRadialGradient() 一起使用。

可以多次调用 addColorStop()方法来改变渐变。如果不对 gradient对象使用该方法,那么渐变将不可见。为了获得可见的渐变,至少需要创建一个色标。

gradient.addColorStop(stop,color);

stop,0-1之间

图像:将图片放在画布上canvas drawImage()方法

 

在画布上定位图像:

context.drawImage(img,x,y);

 

在画布上定位图像,并规定图像的宽度和高度:

context.drawImage(img,x,y,width,height);

 

剪切图像,并在画布上定位被剪切的部分:

context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);

 

 

 

//在画布上添加视频

element.addEventListener(eventfunctionuseCapture)

事件,函数方法,布尔值,冒泡方式

true -事件句柄在捕获阶段执行

false- false-默认。事件句柄在冒泡阶段执行

addEventListener()指向指定元素添加句柄,

 removeEventListener() 方法来移除 addEventListener() 方法添加的事件句柄

var v=document.getElementById("video1");

 

v.addEventListener('play', function() {var i=window.setInterval(function() {ctx.drawImage(v,0,0,270,135)},20);},false);

v.addEventListener('pause',function() {window.clearInterval(i);},false);

v.addEventListener('ended',function() {clearInterval(i);},false);  

 


参考资料:http://www.w3school.com.cn/index.html