花式框 - 不加载隐藏的图像
fancybox - not to load hidden images
在我的网站上,我有多个画廊正在用FancyBox打开。结构是:显示图库中的一张照片,当您单击它时,Fancybox将打开,您可以在Fancybox模式中浏览该图库中的照片。
代码为:显示主照片
<li><a id="some_id" class="grouped_elements" rel="some_rel" href="some_href"><img src=""></a></li>
然后是具有相同属性"rel"的照片,这些照片"属于"该图库:
<li><a id="some_id" style="display:none;" class="grouped_elements" rel="some_rel" href="some_href"><img src=""></a></li>
在属于该图库的照片上,我输入"display:none;",因此它们不会显示在页面上,而仅在您通过单击主照片打开fancybox时显示。
这有效,但问题是我有很多照片并且页面加载时间真的很长,那么有没有办法防止加载带有"display:none"的照片,以便在打开某些图库后加载它?
编辑:忘了提,我正在使用花式盒子2.1.5
我建议使用 AJAX 调用来获取用户请求的图库/图像。这将是异步的,不会影响页面加载。收到成功的完整响应后,您可以使用响应数据启动 $().fancybox()
您的解决方案可以简单得多:
将所有锚点包装在隐藏的div
中,而不是单独隐藏它们,并从所有隐藏的锚点中删除<img>
标签,这样您就不会加载任何(大)图像,无论是否可见:
主要照片显示:
<li><a id="some_id" class="grouped_elements" rel="some_rel" href="some_href"><img src=""></a></li>
隐藏的照片
<div style="display:none">
<a id="some_id" class="grouped_elements" rel="some_rel" href="some_href"></a>
<a id="some_id" class="grouped_elements" rel="some_rel" href="some_href"></a>
... etc.
</div>
请注意,您甚至不需要将它们包装在 <li>
标签中,并且div
可以放置在文档中的任何位置和 <ul>
元素之外。
另外两点意见:
确保不要在多个元素中重复相同的 ID。ID 在同一文档中应该是唯一的。如果要使用同一文档中的同一选择器操作多个元素,请改用类。
确保对缩略图使用调整大小的图像(
<img>
标签);通过 CSS 或 html 将大图像调整为看起来像缩略图一样小(通常)不是一个好主意。
相关文章:
- mouseOver上的隐藏图像问题
- 如何在运行时使用javascript隐藏图像
- 在鼠标悬停处隐藏图像
- 如果没有历史记录,我如何隐藏图像或按钮onclick=;历史.go(-1);
- ImageMapster可以动态显示和隐藏图像选择崩溃
- 当锚点HREF源不存在时隐藏图像
- jQuery UI选项卡基于活动选项卡显示/隐藏图像
- 砖石隐藏图像
- 如何在提交空白表单时隐藏图像
- 循环后如何删除/隐藏图像
- 如果没有src,则使用jquery隐藏图像
- 如何使jquery显示和隐藏图像
- 砌体隐藏图像,直到完全加载
- 在 HTML 表格中显示/隐藏图像
- 点击显示/隐藏图像.没有Javascript
- 使用 jquery 过滤后正确隐藏图像
- 需要按钮显示/隐藏图像旋转 href 添加到 javascript 代码中
- 使用图像滚动达到页面中的最大内容,然后应该使用窗口百分比隐藏图像
- 使用jQuery随机显示/隐藏图像
- 如果没有链接,如何自动隐藏图像