HTML5学习笔记(四)
来源:互联网 发布:linux cgi 编辑:程序博客网 时间:2024/06/05 00:34
HTML5 Canvas(续)
一、替代内容
在访问页面时,如果浏览器不支持canvas元素,那么就需要提供一份替代代码,来告知访问者出现的问题。
下面这段代码就是实现这一功能:
<canvas>
Update yourbrowser tp enjoy canvas!!
</canvas>
在不支持Canvas的IE8.0中打开,效果如下:
二、检测浏览器支持情况
在创建canvas元素之前可以先对浏览器进行检测,确保浏览器可以支持。这段代码按照书上的代码并不会正确运行,通过查找相关资料,我发现书上的代码其实是不完整的,将代码写成下面的样子就可以正常运行了。
<script type="text/javascript">
window.onload = function ()
{
try {
document.createElement("canvas").getContext("2d");
document.getElementById("support").innerHTML = "你的浏览器支持HTML5。";
}
catch (e) {
document.getElementById("support").innerHTML = "你的浏览器不支持HTML5,赶快升级一下吧!";
}
}
</script>
<body>
<div id="support">
</div>
</body>
分别用Chrome36.0和IE8.0做测试,因为Chrome36.0是支持canvas的,因此它的运行结果应该是显示“你的浏览器支持HTML5。”而IE8.0不支持canvas因此它的运行结果应该是显示“你的浏览器不支持HTML5,赶快升级一下吧!”。效果如下图所示
三、在页面中加入canvas
通过如下的代码可以在页面中建立一块隐藏的区域
<canvas height=”200”width=”200”></canvas>
其中参数height用来指定区域的高度,width用来指定区域的宽度,这个区域是隐藏的,在页面中并不能直接观察到。但是通过给区域加上边框,就可以通过边框查找到区域的位置了。
<canvas id=”diagonal”style=”border: 1px solid;” width=”200 height”200”>
效果如图所示
完成了上面的操作之后就可以在上面“画画”,最简单的画一条直线。代码如下
<canvas id="diagonal" style="border:1px solid black;" width="200" height="200">
</canvas>
<script type="text/javascript">
window.onload =function ()
{
var canvas =document.getElementById("diagonal");
var context =canvas.getContext("2d");
context.beginPath();
context.moveTo(70, 140);
context.lineTo(140, 70);
context.stroke();
}
</script>
其中var canvas = document.getElementById("diagonal");通过canvasID获取canvas对象的访问权限。
var context = canvas.getContext("2d");使用canvas对象的getContext方法传入希望使用的canvas类型。
下面的几行就是画图的基本操作:
beginPath():不论开始绘制何种图形,第一个需要调用的就是beginPath。这个简单的函数不带任何参数,它用来通知canvas将要开始绘制一个新的图形了。
moveTo(x,y):不绘制,将当前位置移动到新的目标坐标(x,y)。
lineTo(x,y):不仅将当前位置移动到新的目标坐标(x,y),而且在两个坐标之间画一条直线,实际上moveTo和lineTo只是传入了这条直线的起始点,并没有真正划线,而是在结束canvas操作时,通过调用context.stroke()方法完成线条的绘制。效果如下图所示:
- HTML5学习笔记(四)
- html5学习笔记(四)
- html5学习笔记四
- HTML5学习笔记(四)
- [持续更新]HTML5学习笔记(四)
- HTML5基础学习笔记(四)
- HTML5(李炎恢)学习笔记四 ------------- HTML5元素(中)
- html5学习笔记之四(canvas对象)
- html5学习笔记(四)增强的表单
- html5学习笔记(四)(摘抄讲义加部分理解)
- cocos2d-html5学习笔记(四)--键盘事件和touch事件
- cocos2d-html5学习笔记(四)--键盘事件和touch事件
- cocos2d-html5学习笔记(四)--键盘事件和touch事件
- Html5学习笔记四—播放音频和视频文件
- HTML5学习(四)—1
- HTML5学习(四)—2
- HTML5的学习之拖放(四)
- HTML5学习笔记(一)
- SEO 爬虫原理介绍
- c++数组
- 表达式求值
- SparseArray<E>详解
- 如何通过调用函数交换两个变量的值及常见误区
- HTML5学习笔记(四)
- 王立平--String到byteArray[]的转化
- 剑指XX游戏(十) - 去鹅厂做一名安静的游戏码农
- 解决IE11无法下载文件的问题
- 嵌入式 hi3518平台多路码流添加osd
- 这个绘制圆的程序那里错了!
- xcode 5 升级 xcode6 有可能签名文件 xcode 6会不识别
- C基础——基本运算
- ACM练习3*n+1问题