Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript可以';找不到图像文件_Javascript_Html_Windows 8 - Fatal编程技术网

Javascript可以';找不到图像文件

Javascript可以';找不到图像文件,javascript,html,windows-8,Javascript,Html,Windows 8,我一直在为试图加载到var清单中的图像文件获取未找到的资源。无法找出错误所在,我只能说我完全遵循教程代码 (function () { "use strict"; WinJS.Binding.optimizeBindingReferences = true; var app = WinJS.Application; var activation = Windows.ApplicationModel.Activation; var canvas, context, sta

我一直在为试图加载到var清单中的图像文件获取未找到的资源。无法找出错误所在,我只能说我完全遵循教程代码

(function () {
  "use strict";

  WinJS.Binding.optimizeBindingReferences = true;

  var app = WinJS.Application;
  var activation = Windows.ApplicationModel.Activation;

  var canvas, context, stage;
  var bgImage, p1Image, p2Image, ammoImage, p1Lives, p2Lives, title, endGameImage;
  var bgBitmap, p1Bitmap, p2Bitmap, ammoBitmap;
  var preload;

  var SCALE_X = window.innerWidth / 800;
  var SCALE_Y = window.innerHeight / 480;
  var MARGIN = 25;
  var GROUND_Y = 390 * SCALE_Y;

  app.onactivated = function (args) {
    if (args.detail.kind === activation.ActivationKind.launch) {
        if (args.detail.previousExecutionState !==  activation.ApplicationExecutionState.terminated) {
            // TODO: This application has been newly launched. Initialize
            // your application here.
        } else {
            // TODO: This application has been reactivated from suspension.
            // Restore application state here.
        }
        args.setPromise(WinJS.UI.processAll());
    }
};



function intialize() {

    var manifest = [
        { id: "screenImage", src: "images\Backgrounds\gameplay_screen.png" },
        { id: "redImage", src: "images\Catapults\Red\redIdle\redIdle.png" },
        { id: "blueImage", src: "images\Catapults\Blue\blueIdle\blueIdle.png" },
        { id: "ammoImage", src: "CatapultGame\images\Ammo\rock_ammo.png" },
        { id: "winImage", src: "images\Backgrounds\victory.png" },
        { id: "loseImage", src: "images\Backgrounds\defeat.png" },
        { id: "blueFire", src: "images\Catapults\Blue\blueFire\blueCatapult_fire.png" },
        { id: "redFire", src: "images\Catapults\Red\redFire\redCatapult_fire.png" }
    ];

    canvas = document.getElementById('gameCanvas');
    canvas.width = window.innerWidth;
    canvas.height = window.innerHeight;
    context = canvas.getContext("2d");



    stage = new createjs.Stage(canvas);

    //Preload Images
    preload = new createjs.PreloadJS();
    preload.onComplete = prepareGame;     

    preload.loadManifest(manifest);
    }


function prepareGame() {

    bgImage = preload.getResult('screenImage').result;
    bgBitmap = new createjs.Bitmap(bgImage);
    bgBitmap.scaleX = SCALE_X;
    bgBitmap.scaleY = SCALE_Y;
    stage.addChild(bgBitmap);

    stage.update;
}

function gameLoop() {
    update();
    draw();
}

function draw() {

}

function update() {

}

app.oncheckpoint = function (args) {
    // TODO: This application is about to be suspended. Save any state
    // that needs to persist across suspensions here. You might use the
    // WinJS.Application.sessionState object, which is automatically
    // saved and restored across suspension. If you need to complete an
    // asynchronous operation before your application is suspended, call
    // args.setPromise().
};

document.addEventListener("DOMContentLoaded", intialize, false);
app.start();

})();

您必须记住,无论何时运行javascript,路径都是相对于当前运行脚本的页面的,而不像CSS或HTML那样,路径是相对于文件位置的。因此,使用相对路径可能会带来麻烦

但是,您可以创建图像路径的全局引用

有关更多详细信息和工作解决方案,请参阅本文:


如果您将目录结构发送给我们,我们会更清楚地看到图片: 现在,您可以尝试此代码

var manifest = [
        { id: "screenImage", src: "/images/Backgrounds/gameplay_screen.png" },
        { id: "redImage", src: "/images/Catapults/Red/redIdle/redIdle.png" },
        { id: "blueImage", src: "/images/Catapults/Blue/blueIdle/blueIdle.png" },
        { id: "ammoImage", src: "/CatapultGame/images/Ammo/rock_ammo.png" },
        { id: "winImage", src: "/images/Backgrounds/victory.png" },
        { id: "loseImage", src: "/images/Backgrounds/defeat.png" },
        { id: "blueFire", src: "/images/Catapults/Blue/blueFire/blueCatapult_fire.png" },
        { id: "redFire", src: "/images/Catapults/Red/redFire/redCatapult_fire.png" }
    ];

就目录结构而言,项目中的文件在哪里?