0

在我的 GAE 前端应用程序中加载大部分背景图片时,我遇到了一个糟糕的问题。

“加载资源失败:服务器响应状态为 404(未找到)”。

我的应用程序是一个简单的网站,没有 GAE 后端。我正在使用带有 Google AppEngine 插件的 Eclipse。

背景图片使用 JQuery 每 10 秒更改一次。

我不明白的是,在我的 16 张背景图片中,总能找到第 3 和第 11 张,而其余的则永远找不到。(不,这个名字没有错,我已经检查了百万次了..)

如果我访问图片的方式存在一些系统错误,那么它们不应该都失败吗?

现在显然我在这里遗漏了一些东西,但是什么?我试图用谷歌搜索答案,但我不明白,在本地一切正常。

我为图标和标题拥有的任何其他小图片总是可以完美加载。问题在于大背景图像。浏览器之间没有区别。

我尝试过的事情(没有成功):

  • 我增加了堆栈大小 (-Xmx10m -Xss10m) 以尝试查看部署是否以某种方式失败。
  • 我没有任何 app.yaml 文件,我尝试添加一个简单的 app.yaml 文件并告诉引擎我的图像位于“images”文件夹中。
  • 我将我的背景图片从“图像/背景”移动到“图像”
  • 做了一个测试,我只用一个单一的颜色背景改变了所有的图片非常简单,然后所有的图片都可以。后来除了第 3 和第 11 之外,所有的图片都失败了,没有代码更改。

拜托,知道我在这里缺少什么吗?如果事情在本地工作,但不是在 GAE 中,是否有一个列表,在环境方面有什么区别..?

部分代码如下:

var photos = [ {
"image" : "p1.jpg",}, {
"image" : "p2.jpg",}, {
"image" : "p3.jpg",}, { 
// pictures 4-10
    "image" : "p11.jpg",}, { 
// pictures 12-15
    "image" : "p16.jpg",
        }
        ];


// Set the background image of the new active container
$("#backgroundimg" + activeContainer).css({
    "background-image" : "url(images/" + photoObject.image + ")",
    "display" : "block",
    "z-index" : currentZindex
});

// Fade out the current container
// and display the header text when animation is complete
$("#backgroundimg" + currentContainer).fadeOut(function() {
    setTimeout(function() {
        animating = false;
    }, 1000);
});
4

1 回答 1

0

请尝试绝对引用您的图像,这意味着从文档根目录而不是相对。相对引用,来自当前目录:

url(images/" + photoObject.image + ")"

绝对参考,无论当前目录如何都可以工作(我想知道谷歌应用引擎是否会在给定其他一些代码的情况下动态改变。

url(/images/" + photoObject.image + ")"

我也对照片对象很好奇。鉴于少量上下文,这可能更容易使用:

var photos = ["p1.jpg", "p2.jpg", "p3.jpg", "p11.jpg", "p16.jpg"];

祝你好运!

`

于 2013-09-20T01:22:53.360 回答