<style>
*{
margin: 0;padding: 0;
list-style: none;
}
body{
background: black;
}
.outer{
margin: 10px auto;
border: 1px solid white;
border-radius: 6px;
background-color: white;
width: 200px;
padding: 8px 6px 6px 8px;
}
.outer>ul{
overflow: hidden;
} .outer>ul>li, .outer>ul>li>img{
/* 两个部分设置内容一样,选择器写在一起。 */
float: left;
width: 48px;
height: 48px;
/* li的宽高不能直接由内部img撑起? */ margin: 0 2px 2px 0;
}
/* .outer>ul>li>img{
width: 48px;
height: 48px;
} */
.outer>ul>li:nth-child(1){
position:relative;
/* 相对定位,子绝父相,给后面的loading动态图div使用。 */
}
.outer>ul>li:nth-child(1), .outer>ul>li:nth-child(1)>img{
/* 两个部分设置内容一样,选择器写在一起。 */
width: 148px;
height: 148px;
} .outer>li.first div{
position:absolute;top:0;left:0;
width:156px;height:156px;
display:none;
opacity:0.5;filter:alpha(opacity=50);
background:#fff url(img/loading.gif) 50% 50% no-repeat;
/* 给第一个大图li加一个空div,添加loading的背景图。 让图片加载时,显示加载动图 */
}
</style> <script>
window.onload = function()
{
// var aImg = document.getElementsByTagName('img'); // for(let i=0; i<aImg.length; i++)
// {
// aImg[i].onmouseover = function()
// {
// aImg[0].src = this.src;
// };
// }; var oImg = document.getElementById("box").getElementsByTagName("img"); var oDiv = document.getElementsByTagName("div")[0];
// 给第一个大图li加一个空div,添加loading的背景图。 让图片加载时,显示加载动图。
for (var i = 1; i < oImg.length; i++)
{
oImg[i].onmouseover = function ()
{
var img = new Image(); img.src = oImg[0].src = this.src.replace(/small/,"big");
// replace(); 方法,用于在字符串中用一些字符替换另一些字符。
// 例如:
// var str="Visit Microsoft!"
// document.write(str.replace(/Microsoft/, "W3School"))
// 输出:Visit W3School! oDiv.style.display = "block"; img.complete ? oDiv.style.display = "none" : (oImg[0].onload = function() {oDiv.style.display = "none"})
// complete 通过Image对象的complete 属性来检测图像是否加载完成。
// onload 当图像装载完毕时调用的事件句柄。 // 所以上面这个三元表达式的意思是:
// img这个图片对象是否加载完成?
// 加载完成就让div的display为none。 没有加载完成,就调用img的onload事件,让它加载完成,然后运行function 让div的display为none。 // js Image()对象onload和预加载
// https://segmentfault.com/a/1190000011020722?utm_source=tag-newest
}
}
};
</script>

最新文章

  1. WordPress登陆页和后台面空白解决方法
  2. SQLite数据库的基本操作
  3. [工具开发] keepalived使用nagios监控脚本
  4. windbg sos加载相关
  5. Android中的Shape使用总结
  6. css基本的东西
  7. JAVA 中BIO,NIO,AIO的理解
  8. hdu 4725 最短路
  9. HTML5峰会小记
  10. java删除文件夹下所有文件
  11. JavaWeb 环境搭建
  12. Java面试宝典笔记录
  13. Lua热更新时正确设置文件名
  14. Python操作Redis及连接方式
  15. pyothon学习笔记2-元组
  16. 【2】【leetcode-105,106】 从前序与中序遍历序列构造二叉树,从中序与后序遍历序列构造二叉树
  17. yii2 緩存
  18. dispatch_queue_set_specific可重入的gcd
  19. 微信公众号抢现金红包活动的核心代码分析(asp.net C#)
  20. appium + python的环境配置_windows

热门文章

  1. HDU 3714 Error Curves
  2. 几种类型的db,以及最新的db排名,看一下
  3. 一些优秀的学习网站(Android)
  4. select选择框实现跳转
  5. express中的中间件理解
  6. linux 下find---xargs以及find--- -exec结合使用
  7. centos7基础配置
  8. 获取图书信息api
  9. Lightoj 1127 - Funny Knapsack 【二分】
  10. android 自己定义控件属性(TypedArray以及attrs解释)