360壁纸的特效

360的特效也是非常棒的,这个与大家共勉一下,如果有好的提议,请指出

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>360壁纸的动画效果</title>

<script type="text/javascript" src="jquery-2.0.3.min.js"></script>
<script type="text/javascript">
/*str+="<img class='middleImg' style='left:-"+((widthNum-20)/2)+"px;top:-"+heightSmall+"px;' ";
str+=" src="+imgSrc+" width="+widthNum+" height="+heightNum+" />";*/
$(document).ready(function(e) {//窗体加载事件
$(".div").each(function(index, element) {
var heightNum=$(this).find("img").height();//获取img的高度
var widthNum=$(this).find("img").width();//获取img的宽度
var imgSrc=$(this).find("img").attr("src");//获取img的路径
var imgStr="style='left:-"+((widthNum-20)/2)+"px;top:-"+heightSmall+"px;'";
//这里所写的是你的图片中心到边界的那个高度
var heightSmall=(heightNum)/2;
/*
坐标偏移量
*/
var widthSmall=(widthNum)/2;
//定义了两个div 外层用于变模糊层,另一个内层用于使图片变到与遮罩图片大小相同 使用backgroundsize 是控制背景图片大小与遮罩图片相同 backgroundposition 是为了让扩大显示的图片与遮罩图片的位置相同 是两张图片的中心重合
var str="<div class='outerClass' style='"+widthNum+"px;height:"+heightNum+"px;'> ";
str+="<div class='middleClass' style='left:"+widthSmall+"px;top:"+heightSmall+"px;background-image:url("+imgSrc+"); background-size:"+widthNum+"px "+heightNum+"px; background-repeat:no-repeat;background-position:-"+widthSmall+"px -"+heightSmall+"px'>";
str+="</div></div>";
var ele = $(str);
ele.attr("h","333px");
$(this).append(ele);
});
//使外层div块 进行循环 让它的模糊层透明度变小
$(".outerClass").each(function(index, element) {
$(this).animate({
opacity:0.2
},2000);
});

//是你的遮罩图片 扩大
$(".middleClass").each(function(index, element) {
//获取你父类的高度 也就是模糊层的高度
var h=$(this).parent().height();
var w=$(this).parent().width();
//让你的背景图片进行扩大到与父类相同
$(this).animate({
"height":h+"px",
"width":w+"px",
"left":"0px",
"top":"0px",
"backgroundPosition":"0px"
},2000,function(){//回调函数 让父类移除,然后自己移除
$(this).parent().remove();
$(this).remove();
});
});
});
</script>
<style type="text/css">
*{
margin:0px;
padding:0px;
}
.div{
float:left;
margin:5px;
position:relative;

}
.outerClass{
position:absolute;left:0px; top:0px; background-color:#CCC;
}
.middleClass{
position:absolute;
}
.middleImg{
position:relative;
}
</style>
</head>

<body style="position:absolute">
<div class="div" >
<img src="images/178350.jpg" width="540" height="333"/>
</div>
<div class="div">
<img src="images/178406.jpg" width="367" height="228" />
</div>
<div class="div">
<img src="images/178444.jpg" width="500" height="363" />
</div>
</body>
</html>
原文地址:https://www.cnblogs.com/meng70345/p/3722970.html