我的网站上有一个画廊.该图库包含15个图像,每个图像大约500KB(总大小为7.5MB).
因为画廊需要一段时间才能加载(我的电脑需要25秒,很难取决于连接),我希望访问者知道画廊正在加载,因此Ajax loading GIF.
我希望访问者在进入图库页面后立即看到加载GIF,直到图库图像已下载并准备好进行查看.
为了实现我的目标,这就是我所做的:
这是图库HTML页面正文的开头:
<body> <img src="images/ajax-loader.gif" alt="" class="hiddenPic" /> <!-- loading Ajax loading GIF before all the other images -->
这是画廊CSS部分:
#gallery { background: url(images/ajax-loader.gif); background-repeat:no-repeat; background-attachment: fixed; background-position: center;
所以基本上,一旦访问者进入图库页面,就应该下载加载GIF,因为它是< body>内的第一个对象.这将被下载.但是,由于hiddenPic类,它不可见.
此方法应该有助于尽快将加载GIF作为图库背景加载,直到所有图库图像都已下载并且图库已准备就绪.
但是,加载GIF在Google Chrome上无法正常运行;它在Firefox& IE(完美无瑕地旋转) – 但是从Chrome出现的那一刻起到画廊准备好的那一刻,它就会卡在Chrome上(无法正常旋转).
更新:我知道我可以实现一个更好的画廊(就像评论中建议的那样),当进入画廊页面时,用户需要更少的资源 – 但我不明白这是什么原因导致问题GIF加载程序在Firefox& IE浏览器.
为什么Ajax加载GIF在Chrome上无法正常运行?
解决方法
您只需要在第602行删除此声明:
background-attachment: fixed;