JavaScript/HTML5 Canvas의 새로운 기능입니다. 내 배경의 특정 영역을 클릭 할 수있게 만들어 다른 페이지를 열면 문제가 발생합니다. 내가하고 싶은 일은 전체 배경이 아닌 내 배경의 선택된 영역을 클릭 가능하게 만드는 것입니다.HTML5 캔버스를 사용하여 마우스 좌표 관련 문제가 발생했습니다.
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Adventures of Balthazar</title>
<link rel="stylesheet" type="text/css" href="menu.css" />
<script type="text/javascript">
function init(){
var canvas = document.getElementById('myCanvas');
var ctx = canvas.getContext('2d');
var img = new Image();
var mouseX = 0;
var mouseY = 0;
var btnPlay = new Button(250,555,162,284);
document.addEventListener('click',mouseClicked,false);
img.onload = function() {
ctx.drawImage(img, 0,0);
}
img.src='img/menu.png'
function Button(xL,xR,yT,yB){
this.xLeft = xL;
this.xRight = xR;
this.yTop = yT;
this.yBottom = yB;
}
Button.prototype.checkClicked = function(){
if(this.xLeft <= mouseX &&
mouseX <= this.xRight &&
this.yTop <= mouseY &&
mouseY <= this.yBottom)
return true;
}
function playGame(){
window.location.href = 'index.html'
}
function mouseClicked(e){
mousex = e.pageX - canvas.offsetLeft;
mousey = e.pageY - canvas.offsetTop;
if(btnPlay.checkClicked()) playGame();
}
}
</script>
</head>
<body onLoad="init()">
<div id="canvas-container">
<canvas id="myCanvas" width="800" height="600"> </canvas>
</div>
</body>
</html>
나는 완전히 도움이 방법을 아주 잘 모르겠어요,하지만 난 당신이 새로운 버튼과 변수 "btnPlay"를 선언 한 것을 알 수 않는 : 여기
는 업데이트 된 코드입니다 정의되었습니다. – SirPython