CSS3를 사용하여 너비와 높이를 설정하여 반응 형으로 만들고 싶은 HTML 캔버스 게임이 있습니다.JavaScript 캔버스 게임을 CSS3로 반응
JS 캔버스 게임의 코드는 다음과 같습니다
<div id="main">
<div class="game-box">
<div class="game-container">
<div id="phaser-div">
</div>
</div><!-- end game-container -->
</div><!-- end game-box -->
<script src="js/jquery-1.11.2.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/phaser.min.js"></script>
<script>
var game = new Phaser.Game(832, 508, Phaser.WEBGL, 'phaser-div', { preload: preload, create: create, update: update });
var background;
var filter;
function preload() {
var urlBase = location.href.substring(0, location.href.lastIndexOf("/") + 1);
game.load.image('phaser', urlBase + 'games/game001/game001-logo.png');
game.load.script('filter', urlBase + 'games/game001/marble.js');
this.game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL; this.game.scale.setShowAll(); window.addEventListener('resize', function() { this.game.scale.refresh(); }); this.game.scale.refresh();
}
function create() {
var logo = game.add.sprite(game.world.centerX, game.world.centerY, 'phaser');
logo.anchor.setTo(0.5, 0.5);
background = game.add.sprite(0, 0);
background.width = 832;
background.height = 508;
filter = game.add.filter('Marble', 832, 508);
filter.alpha = 0.2;
// The following properties are available (shown at default values)
// filter.speed = 10.0;
// filter.intensity = 0.30;
background.filters = [filter];
}
function update() {
filter.update();
}
</script>
라이브 링크 :
http://revolutionarydeveloper.com/project-games/index.html
나는 #에 같은 설정을 시도 페이저를-DIV 캔버스 {폭 : 100 %; 높이 : 470 픽셀;}하지만 작동하지 않는 것 같습니다. CSS3를 사용하여 반응 형으로 만들고 미디어 쿼리를 사용하여 너비와 높이를 수정하려면 어떻게해야합니까?
많은 감사
참고 :이 게임은 Phaser.JS를 사용합니다. 관련된 경우 해당 링크를 포함합니다.
https://cdn.jsdelivr.net/phaser/2.6.2/phaser.js
이 좋은에서 반응 게임
모양을 만들기위한 자신의 코드를 가지고 있지만, 문제는 그것으로있다. 페이 저가 제대로 조정되도록 페이지를 새로 고쳐야합니다. 즉, 페이지로드시 반응합니다. 하지만 페이지의 크기를 조정하면 제대로 확장되지 않습니다. 페이지 크기가 변경 될 때마다 업데이트하도록하는 방법이 있습니까? 그렇지 않다면 CSS를 사용하여 너비와 높이를 제어 할 수 있습니까? –
몸체에 크기 조절 이벤트를 첨부하고 크기 조절 속성의 기초를 결정하는 등 코드를 작성해야합니다. 페이저는 캔버스를 자주 그리므로 부트 스트랩처럼 반응하지 않을 수 있습니다 (페이저 캔버스는 우리가 말할 수있는 요소 일뿐만 아니라 그것은 애니메이션 그림입니다). – anshuVersatile
설명 anshu 주셔서 감사합니다. 페이지 너비에 따라 페이저 캔버스의 크기를 조정할 수있는 코드를 작성하는 방법을 안내해 주시면 자바 스크립트 스킬 수준이 매우 중간 수준이므로이 점을 높이 평가할 것입니다. –