43,741
社区成员
发帖
与我相关
我的任务
分享
<style>
canvas{
background-color: #0094FF;
}
</style>
</head>
<body>
<canvas id="canvas" width="300" height="300"></canvas>
<button onclick="clic()">hah</button>
</body>
<script type="text/javascript">
var content=document.getElementById('canvas').getContext('2d')
content.fillRect(50,50,100,100)
content.fillStyle='black'
function clic(){
document.getElementById('canvas').setAttribute("width","400")
content.fillRect(50,50,100,100)
content.fillStyle='black'
}
</script>
用输入框传入参数就可以自由控制大小,这是一个实现的例子,一个解决的思路
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<style type="text/css">
canvas{
background: lawngreen;
}
</style>
<body>
<canvas id="canvas" width="300" height="300"></canvas>
<canvas id="canv" width="300" height="300"></canvas>
<button id="add">add</button><button id="sub">sub</button>
</body>
<script type="text/javascript">
var content=document.getElementById("canvas").getContext("2d")
content.fillRect(50,50,100,100);
content.fillStyle="black"
document.getElementById("add").onclick=function(){
var width=canvas.getAttribute("width")
var height=canvas.getAttribute("height");
var data=content.getImageData(0,0,width,height)
width=parseInt(width)+10
height=parseInt(height)+10
canvas.setAttribute("width",width)
canvas.setAttribute("height",height)
content.putImageData(data,0,0)
}
document.getElementById("sub").onclick=function(){
var width=canvas.getAttribute("width")
var height=canvas.getAttribute("height");
var data=content.getImageData(0,0,width,height)
width=parseInt(width)-10
height=parseInt(height)-10
canvas.setAttribute("width",width)
canvas.setAttribute("height",height)
content.putImageData(data,0,0)
}
</script>
</html>