在GAE中找不到背景图像

时间:2013-09-20 01:11:54

标签: jquery css image google-app-engine

在我的GAE前端应用中加载大部分背景图片时出现问题。

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

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

使用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);
});

1 个答案:

答案 0 :(得分:0)

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

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

绝对引用,无论当前目录如何都有效(我想知道是否某种方式谷歌应用程序引擎会动态地改变其他代码。

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

我也对照片对象感到好奇。考虑到少量的上下文,这可能更容易使用:

var photos = ["p1.jpg", "p2.jpg", "p3.jpg", "p11.jpg", "p16.jpg"];
祝你好运!

`