Atitit html5 Canvas 如何自适应屏幕大小

 

Atitit  html5 Canvas 如何自适应屏幕大小

 
 

 

可以用JS监控屏幕大小,然后调整Canvas的大小。在代码中加入JS

1

2

3

4

5

6

7

$(window).resize(resizeCanvas);

 function resizeCanvas() {

        canvas.attr("width", $(window).get(0).innerWidth);

        canvas.attr("height", $(window).get(0).innerHeight);

        context.fillRect(0, 0, canvas.width(), canvas.height());

 };

 resizeCanvas();

就可以了。

 

<canvas> 标签只是图形容器,您必须使用脚本来绘制图形

 

 

但是仅仅是这样canvas的内容并不能随着窗口大小的改变而改变。 
我们需要在窗口大小改变的同时调整画板的大小,所以我们需要在js中加入下面这段代码: 

Javascript代码 

1. $(window).resize(resizeCanvas);  

2.    

3.  function resizeCanvas() {  

4.    

5.         canvas.attr("width", $(window).get(0).innerWidth);  

6.    

7.         canvas.attr("height", $(window).get(0).innerHeight);  

8.    

9.         context.fillRect(0, 0, canvas.width(), canvas.height());  

10.    

11.  };  

12.    

13.  resizeCanvas();  



这样画布就能根据窗口大小自动调整了,并且不会出现滚动条了。 

注:使用$(window).get(0).innerHeight代替$(window).height()是因为后者无法返回所有浏览器窗口的完整高度值。这种方法实际效果并不完美,浏览器窗口中canvas元素和滚动条的四周仍存在白色区域 

 

 

 

 

 

html5 Canvas 如何自适应屏幕大小 - - ITeye技术网站.html

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

汉字名:艾提拉(艾龙)   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

atiend

 

 

 

posted @   attilaxAti  阅读(2543)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示