1

在过去的几天里,我一直无法让 Phaser 工作:只是想测试一个 hello world 程序。我完全按照 Phaser 网站上的说明进行操作,但它仍然不适合我。

我正在使用 node.js。

这是 index.html:

<!DOCTYPE html>
<html>

<head>
     <meta charset="utf-8" />
     <title>Hello World</title>

     <style>
        #game_div {
        width: 500px;
        margin: auto;
        margin-top: 50px;
      }
    </style>

    <script type="text/javascript" src="phaser.min.js"></script>
    <script type="text/javascript" src="main.js"></script>
</head>

<body>

    <div id="game_div"> </div>

</body>

</html>

这是 main.js:

/*jslint node: true */
"use strict";
var game = new Phaser.Game(400, 490, Phaser.AUTO, 'game_div');

var main_state = {

    preload: function () {
        game.load.image('hello', 'assets/hello.png');
    },

    create: function () {
        this.hello_sprite = game.add.sprite(200, 245, 'hello');
    },

    update: function () {
        this.hello_sprite.angle += 1;
    }
}

game.state.add('main', main_state);
game.state.start('main');

它给我的错误是:

在定义之前使用了“Phaser”。
var game = new Phaser.Game(400, 490, Phaser.AUTO, 'game_div');

我真的尝试过寻找解决方案,但我找不到任何问题。我对 JavaScript 和移相器很陌生。

4

2 回答 2

6

上面的 SecurityError 指向问题的根源:您直接在浏览器中打开文件,在此情况下您无权访问这样的本地文件。它需要通过网络服务器提供服务。如果您需要任何帮助,我们将在网站上的入门指南中介绍。

于 2014-04-11T10:26:06.973 回答
0

chrome.exe在看起来像尝试添加--allow-file-access-from-files然后打开浏览器并加载适用于 linux 的网页的 google chrome 快捷方式中,/usr/bin/google-chrome-stable %U --allow-file-access-from-files它将对我有用,即使在本地运行时也已加载图像

于 2015-09-16T17:54:42.787 回答