测试img在不显示时是否加载?
一直搞不明白,隐藏的元素的背景图,在页面加载时,是否自动加载?
img隐藏时,图片会加载吗?
测试代码如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>img load</title>
<style>
.divImg {background:url(cssImg1.jpg);}
.divImg {background:url(cssImg2.jpg);}
.divNullImg {background:url(cssNullImg.jpg);}
.divImgNone {display:none;}
.divImgNone {background:url(cssNoneImg1.jpg);}
.divImgNone div {background:url(cssNoneImg2.jpg);}
#divNone {background:url(cssNoneImg3.jpg);}
.divHoverImg:hover {background:url(cssHoverImg1.jpg);}
</style>
</head>
<body> <img src="img.jpg" />
<img src="cssImg2.jpg" />
<img src="ImgNone.jpg" style="display:none;" /> <div id="divNone" style="display:none; background:url(divNoneBack1.jpg);">
<img src="divNoneImg1.jpg" />
<div style="background:url(divNoneBack2.jpg);"></div>
</div>
<input type="button" value="显示隐藏" onclick="document.getElementById('divNone').style.display = 'block';" /> <div class="divImg">
img
</div> <div class="divImgNone">
<img src="divNoneImg2.jpg" />
img none
<div></div>
<div style="background:url(divNoneBack3.jpg);"></div>
</div> <div class="divHoverImg">
test Hover
</div> <script>
var img = new Image();
img.src = 'jsImg.jpg';
document.getElementById('divNone').style.backgroundImage = 'url(jsNoneImg.jpg)';
</script> </body>
</html>
测试了chrome33 和 IE7 使用Fiddler 监控
测试结果如下:
结果很复杂,IE和chrome下hover样式的背景图,只有鼠标悬浮时才加载。chrome下隐藏的背景不加载,IE下隐藏的背景要加载。
- 隐藏的元素及其包含的背景图不会加载(样式隐藏元素的当前背景会加载)。
- hover的背景图不会加载,当hover时才加载。
- 隐藏的img或img在隐藏的元素内也会加载。
- 没有匹配的样式中,包含的背景不会显示。
- 使用JS给隐藏的元素设置背景图时,会加载背景图。
- hover的背景图不会加载,当hover时才加载。
- 没有匹配的样式中,包含的背景不会显示。
测试img在不显示时是否加载?的更多相关文章
- 【技巧】easyUI datagrid在隐藏时加载,显示时无法加载出界面
注意在显示时调用再调用一次resize就可以显示出来 $("#"+datagridId).datagrid("resize");
- webpack中dev-server不写contentBase时如何设置可以显示页面并且加载js
今天学习了dev-server这个配置,中间遇到疑惑,我写了contentBase是可以走通,可以再localhost:8080看到页面并且正确加载bundle.js的,但是这个contentBase ...
- 动态链接库知识点总结之三(如何以显示的方式加载DLL)
总结一下如何显示加载方式加载DLL, 首先,我们新建一个win32项目,选择dll,空项目,再添加一个源文件,一个模块定义文件(.def),具体如下图.(详细方法已经在前两篇文章中讲述,如有不懂,打开 ...
- JQuery/JS插件 jsTree加载树,预先加载,初始化时加载前三级节点,当展开第三级节点时 就加载该节点下的所有子节点
jsTree加载树, 初始化时 加载前三级节点, 当展开第三级节点时 就加载该节点下的所有子节点 html: <!DOCTYPE html> <html> <head&g ...
- js 鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层异步加载模式
js用处:在做商城时,首页图片太多,严重影响首页打开速度,所以我们需要用到异步加载楼层.js名称:鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层模式js解释:1.用于商城的楼层内容异步加载,滚动条 ...
- selenium启动Chrome时,加载用户配置文件
selenium启动Chrome时,加载用户配置文件 Selenium操作浏览器是不加载任何配置的,网上找了半天,关于Firefox加载配置的多点,Chrome资料很少,下面是关于加载Chrome ...
- 基于spring的web项目启动时预加载数据到ServletContext
1.要在web启动时预加载数据到ServletContext,实现方法有很多,一种比较简单的方案就是: 1)新建一个bean,定义其初始化方法: <bean id="beanId&qu ...
- 【WordPress】外网访问WordPress时无法加载样式表CSS
情况: 阿里云ECS服务器,用WampServer搭建的WordPress站点,服务端自身访问该站点时显示正常,但外网访问时不能加载样式表CSS的问题. 重要的参考: https://www.doub ...
- Linux中实现在系统启动时自动加载模块
下面是以前学习Linux时写的,后来仔细研究rc.sysinit后发现,只需要修改下列地方就可以了,不必这么麻烦的: rc.sysinit中有这样的一段代码: # Load other user-de ...
随机推荐
- Ubuntu14.04 64位运行32位程序
最近公司新增的机器安装Ubuntu14.04 64bit导致之前在32bit下编译的Qt工具软件无法运行. 于是google的了一下找到一些解决办法,但不能保证全部32bit的Qt程序都能正常,测试了 ...
- Alice and Bob
类似于石子合并的游戏,在黑板上写下N个数,每次只能将其中的一个数减1(结果为0自动消去),或者将某两个数消去,将其和写在黑板上. Alice先手,彼此都采用最优策略,将最后一个数消去者获胜. 思路:设 ...
- 十日谈 (share)
@拔赤 一直想写这篇“十日谈”,聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是“初级”前端开发工程师 ...
- php中读取文件内容的几种方法
1.fread string fread ( int $handle , int $length ) fread() 从 handle 指向的文件中读取最多 length 个字节.该函数在读取完最多 ...
- Soapui 简单学习整理
post 请求 输入汉字提示错误的问题 ; 如图 将request请求 下的属性 Encoding改为UTF-8
- GridView用法大全(转)
http://www.cnblogs.com/sufei/archive/2010/03/27/1698590.html
- RViz 实时观测机器人建立导航2D封闭空间地图过程 (SLAM) ----27
原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ ROS提供了非常强大的图形化模拟环境 RViz,这个 RViz 能做的事情非常多.今天我们学习一下如何使 ...
- python--列表生成式--8
原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/ 一.生成列表 要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],我 ...
- java的nio之:java的nio系列教程之channel的数据交换
在Java NIO中,如果两个通道中有一个是FileChannel,那你可以直接将数据从一个channel(译者注:channel中文常译作通道)传输到另外一个channel. transferFro ...
- supervisor运行golang守护进程
最近在鼓捣golang守护进程的实现,无意发现了supervisor这个有意思的东西.supervisor是一个unix的系统进程管理软件,可以用它来管理apache.nginx等服务,若服务挂了可以 ...