2010-04-16 28 views
4

我决定做通过具有两个div S,并将它们设置display: none 之一,但在这种情况下,我存储所有数据两次读更多...功能。 现在的问题 -css:无显示。这个很贵吗?


如果我有一个div元素,具有style="display:none",其中包含了很多的大尺寸图像时,它会对网页打开时间的影响?

+5

对于您的先生,只需9.99英镑。我接受PayPal。 – 2010-04-16 15:36:10

回答

12

display:none不会阻止隐藏的内容与页面的其余部分一起加载。

如果您希望在加载时使页面变得更轻,则可以通过Ajax按需加载“read more ..”内容。

+0

@Diodeus但在视觉上,当我尝试ti加载页面时,显示额外的大文件:无div,它打开很容易。为什么在这种情况下? – Simon 2010-04-16 15:32:08

+0

如果您使用的是FireFox,请下载并安装Firebug插件。 NET选项卡将显示您正在加载的页面以及需要多长时间。你将能够亲眼看到这一切。 – 2010-04-16 15:34:34

4

即使将父div设置为display: none,图像也会立即获取。

如果这不是你的意图,你不想去与AJAX路线,你可能要插入的图片到DOM被点击的read more...按钮只有当,如下面的例子:

var hiddenDiv = document.getElementById("your-hidden-div-id"); 
var imageToLoad = document.createElement("img"); 

imageToLoad.setAttribute("src", "image1.png"); 

hiddenDiv.appendChild(imageToLoad); 
+1

实际上,如果Opera隐藏,Opera不会加载图像,以节省页面加载时间。但所有其他浏览器都做AFAIK。 – DisgruntledGoat 2010-04-16 15:35:32

+0

更好/更简单的解决方案是在页面上放置图像标签,但src URL位于不同的属性中,例如。 '',并在准备好加载时使用javascript/jQuery填充src属性。 – 2011-12-14 00:08:40