我正在开发一个通过ajax加载页面的网站。我使用#!/ url语法跟踪当前位置。如果,当页面被第一次加载时,该页面已经在URL的哈希部分中有一个URL,我使用javascript重定向到该页面:
document.location = initialPage;
我的内容包含一堆div,其位置为:absolute,以正确的顺序堆叠显示。我的身体背景是一组使用jQuery幻灯片定期切换的图像。 这适用于所有浏览器,除了(以及这里的问题)在Chrome中我有时会丢失我的内容div的背景图像。最可靠的复制方式是:
请注意,如果您现在再次使用Ctrl-F5刷新,页面将再次显示正常。在任何一种情况下,没有重要的javascript在页面加载上运行。背景滚动已初始化,但问题存在于没有背景的页面上(项目页面)。 我倾向于这是Chrome中的一个错误,但我需要这个工作。有谁能提出建议?
门诺
答案 0 :(得分:2)
尝试在CSS上使用背景的绝对路径。也许它可以帮助确定问题。
此外,您可以尝试在页面加载后将背景应用于块
$(document).ready{
$("#content").css("background","url(../Images/Css/bg_content.png)");
}
也许这将是有用的。当我请求像http://epsilon.tabeoka.be/fr/contacts这样的样本页面时。浏览器执行了41-42次请求并上传了所有图像。当我按照你的方式(按下Ctrl-F5) - 浏览器只完成31-33请求。他没有上传背景图片。看起来他认为他们已经上传了。
所以当我在Chrome上禁用缓存时 - bug就消失了。
也许你应该尝试将所有背景属性添加到你的页面而不是CSS中,并添加如下随机值:
<style>
#content {
background:url(../Images/Css/bg_content.png?rnd=123124);
}
</style>
答案 1 :(得分:1)
如果它确实是Chrome错误(请参阅我对您的问题的评论),您可以尝试使用rgba背景颜色替换背景图像。它更好,您可以为旧版浏览器添加备用。
background-color: rgb(16,34,68);
background-color: rgba(16,34,68,.75);