[js高手之路] html5 canvas系列教程 – 认识canvas以及核心以方法

canvas是html5饱受引入的一个初因素,俗称画布,既然是画布,当然是故来画的。canvas技术指的凡运用javascript操作canvas元素绘制图形的艺,要使用canvas,一定要是浏览器支持canvas,谷歌和火狐的支持性很好,IE8不支持。你可参考这网站,查看canvas的支持性:http://www.caniuse.com/\#search=canvas,当然他还能查询到css3和html5等很多web新潮技术在各浏览器的支持性.

怎利用canvas?

若是运canvas,一般都要展开以下3步操作:

1,获取canvas对象( 通过选择器选择canvas元素 )

2,通过canvas获取他的上下文绘制环境( context )

3,结合javascript调用canvas的api进行图纸绘制

认识canvas的性质:宽度和高度

canvas的默认宽度和高度:宽度:300,高度:150

 1 <script>
 2     window.onload = function(){
 3         var oCanvas = document.querySelector( "#cv" );
 4         console.log( 'canvas的默认宽度与高度:' + '宽度:' + oCanvas.width + ',高度:' + oCanvas.height );
 5     }
 6 </script>
 7 </head>
 8 <body>
 9     <canvas id="cv">你的浏览器不支持</canvas>
10 </body>

为什么要明白canvas的肥瘦与高度也?
因为当动画与制图制作的长河中,经常索要重绘操作,而重绘操作需要取得canvas的增幅和高度.

留意:canvas的增长率与高度,只能通过行间属性或者js动态修改,不要通过体制去窜,否则获取到的宽窄和高度不准

 1 <style>
 2 #cv {
 3     width:600px;
 4     height:400px;
 5 }
 6 </style>
 7 <script>
 8     window.onload = function(){
 9         var oCanvas = document.querySelector( "#cv" );
10         console.log( 'canvas的默认宽度与高度:' + '宽度:' + oCanvas.width + ',高度:' + oCanvas.height );
11     }
12 </script>

由此体制修改canvas的宽与高度分别吗600px和400px,但是通过js通过获得到之可非是以此价值,而是默认值。所以不要通过体制去窜,而应经过安装行间属性或者js动态修改属性:

 1 <script>
 2     window.onload = function(){
 3         var oCanvas = document.querySelector( "#cv" );
 4         console.log( 'canvas的默认宽度与高度:' + '宽度:' + oCanvas.width + ',高度:' + oCanvas.height );
 5     }
 6 </script>
 7 </head>
 8 <body>
 9     <canvas id="cv" width="600" height="400">你的浏览器不支持</canvas>
10 </body>

如此获取到的宽度和高度才是600px和400px.

canvas也足以透过js动态创建

 1 <script>
 2     window.onload = function () {
 3         var oCanvas = document.querySelector("#cv");
 4         console.log('canvas的默认宽度与高度:' + '宽度:' + oCanvas.width + ',高度:' + oCanvas.height);
 5     }
 6 </script>
 7 </head>
 8 <body>
 9 <script>
10 ;(function () {
11     var oCanvas = document.createElement("canvas");
12     oCanvas.setAttribute('id', 'cv');
13     oCanvas.width = '600';
14     oCanvas.height = '400'
15     document.body.appendChild(oCanvas);
16 })();
17 </script>
18 </body>

发表评论

电子邮件地址不会被公开。 必填项已用*标注