<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
*{
margin: 0;
padding: 0;
}
img{
position: absolute;
top: 0;
left: 0;
}
canvas{
position: absolute;
top: 0;
left: 0;
}
</style>
</head>
<body>
<img src="img/a11.jpg"/>
<canvas id="canvas" width="750" height="420"></canvas>
<script type="text/javascript">
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
ctx.fillStyle = "#CCC";
ctx.fillRect(0,0,750,420);
ctx.globalCompositeOperation = "destination-out";
canvas.onmousedown = function(){
canvas.onmousemove = function(e){
var ev = e || window.event;
x = ev.clientX;
y = ev.clientY;
ctx.beginPath();
ctx.arc(x,y,15,0,Math.PI * 2,true);
ctx.fill();
removeAll();
}
canvas.onmouseup = function(){
canvas.onmousemove = null;
}
function removeAll(){
var count = 0;
var pxs = ctx.getImageData(0,0,750,420).data;
for (var i = 0; i < pxs.length; i += 4) {
if(pxs[i + 3] == 0){
count++;
}
}
if(count >= pxs.length / 4 / 2){
ctx.clearRect(0,0,750,420);
}
}
}
</script>
</body>
</html>