为什么 phaser.js 无法从第三方域加载图像?

Why isn't phaser.js able to load an image from a third-party domain?

我正在学习phaser.js,我什至无法加载图像。

代码如下:

// Need state. All game logic goes in state

var GameState = {

    // Load all your images. Thats what the preload function is
    preload : function(){
        //Load Image
    this.load.image( 'background', 'https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcSMxwX5oTml7qBFmUD3vEIzEhqLQfakBVjmkQezA8HKs4KnT-2Q' );

    },

    //Execute after everything is loaded
    create: function(){
        //From top left param = (x,y)
        this.background = this.game.add.sprite(0,0, 'background');

    },

    update: function(){


    }

}

// New Game instance, 3rd parameter WEBGL or CANVAS automatic  GL
var game = new Phaser.Game(640,360,Phaser.automatic);

// add state to game

// First just a name, second par is the actual Object
game.state.add('GameState', GameState);
game.state.start('GameState');

这张图片清楚地表明它没有加载:

您的图片未显示,因为 Phaser 无法使用跨源图片,因此所有图片都需要从同一来源加载。实际上,这意味着您需要先将图像下载到您的计算机,而不是直接从 gstatic.com 加载图像,然后将其移动到您的 Phaser 项目文件夹并使用相对路径加载它。

有关详细信息,请参阅 Wikipedia article on the Same-Origin Policy