老师写的代码能给我们发份吗
view-source:http://www.imooc.com/activity/project1
最好自己手敲哦~需要的话留邮箱
HTML部分
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge ,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no"> <meta name="form-detection" content="telephone=no"> <title>恭贺新春</title> <link rel="stylesheet" type="text/css" href="css/style.css"> <script type="text/javascript" src="js/script.js"></script> </head> <body> <div> <img src="images/music_pointer.png"> <img id="music" src="images/music_disc.png"> </div> <!-- 第一页开始 --> <div id="page1"> <div></div> <div>点击屏幕<br/>开启好运2016</div> <div></div> <div>2016年新年贺卡</div> </div> <!-- 第一页结束 --> <!-- 第二页开始 --> <div id="page2"> <div class="bg p2_bg_loading"></div> <div></div> <div></div> <div></div> </div> <!-- 第二页结束 --> <!-- 第三页开始 --> <div id="page3"> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div> <!-- 第三页结束 --> <!-- 插入音乐开始 --> <audio autoplay="true"> <source src="audio/happynewyear.mp3" type="audio/mpeg"> </audio> <!-- 插入音乐结束 --> </body> </html>
CSS部分
/*al tag*/
*{
margin: 0;
padding: 0;
border: none;
font-size: 1.5625vw;
font-family: "Microsoft Yahei";
}
html,body{
height: 100%;
overflow:hidden;
}
/*music*/
.music{
position: fixed;
top: 3vh;
right: 4vw;
z-index: 5;
width: 15vw;
height: 15vw;
border: 4px solid #ef1639;
border-radius:50%;
background: #fff;
}
.music > img:first-of-type{
position: absolute;
top: 24%;
right: 2.5%;
z-index: 1;
width: 28.421%;
}
.music > img:last-of-type{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin:auto;
z-index: 0;
width: 79%;
}
/*动画*/
.music > img.play{
-webkit-animation: music_disc 4s linear infinite ;
anmation: music_disc 4s linear infinite ;
}
@-webkit-keyframes music_disc{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
keyframes music_disc{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
/*page bg*/
.page{
height: 100%;
position: absolute;
width: 100%;
}
.page > .bg{
position: absolute;
width: 100%;
height: 100%;
z-index: -1;
}
/*page1*/
#page1{
display: block;
}
#page1 > .bg{
background: url("../images/p1_bg.jpg") no-repeat center;
background-size:100%;
}
#page1 > .p1_lantern{
position: absolute;
color: white;
top: -3.4%;
right: 0;
left: 0;
margin: auto;
background: url("../images/p1_lantern.png") no-repeat center;
background-size: 100%;
width: 45vw;
height: 71.2vh;
font-size: 3.506rem;
padding-top: 31vh;
text-align: center;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
-o-box-sizing:border-box;
box-sizing:border-box;
}
#page1 > .p1_lantern:before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
content: "";
margin :auto;
width :30vw;
height: 30vw;
background :#d60b3b;
opacity: .5;
border-radius:50%;
-webkit-box-shadow: 0 0 10vw 10vw #d60b3b;
-moz-box-shadow: 0 0 10vw 10vw #d60b3b;
-ms-box-shadow: 0 0 10vw 10vw #d60b3b;
-o-box-shadow: 0 0 10vw 10vw #d60b3b;
box-shadow: 0 0 10vw 10vw #d60b3b;
-webkit-animation: p1_lantern .5s infinite alternate;
animation: p1_lantern .5s infinite alternate;
}
/*动画*/
@-webkit-keyframes p1_lantern{
0%{
opacity: .5;
-webkit-transform : scale(.8, .8);
transform : scale(.8, .8);
}
100%{
opacity: 1;
}
}
@keyframes p1_lantern{
0%{
opacity: .5;
-webkit-transform : scale(.8, .8);
transform : scale(.8, .8);
}
100%{
opacity: 1;
}
}
#page1 > .p1_imooc{
position: absolute;
right: 0;
left: 0;
bottom: 9vh;
background :url("../images/p1_imooc.png") no-repeat center center;
background-size: 100%;
width: 27.652vw;
height: 18.63vh;
margin: auto;
}
#page1 > .p1_words{
font-size: 2.134rem;
position: absolute;
right: 0;
bottom: 48px;
left: 0;
text-align: center;
color: #231815;
}
/*page2*/
#page2{
display: none;
-webkit-transition: .5s;
transition: .5s;
}
#page2.fadeOut{
opacity: .3;
-webkit-transform: translate(0, -100%);
transform: transform(0, -100%);
}
#page2 > .bg{
background: url("../images/p2_bg.jpg") no-repeat center center;
background-size:100%;
}
#page2 > .p2_bg_loading{
z-index: 4;
background: #ef1639;
-webkit-animation: p2_bg_loading 1s linear forwards;
animation: p2_bg_loading 1s linear forwards;
}
@-webkit-keyframes p2_bg_loading{
0% {opacity: 1;}
100%{opacity: 0;}
}
@keyframes p2_bg_loading{
0% {opacity: 1;}
100%{opacity: 0;}
}
#page2 > .p2_circle{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
border-radius: 50%;
background: url("../images/p2_circle_outer.png") no-repeat center center;
background-size: 100%;
width: 59.375vw;
height: 59.375vw;
-webkit-animation: p2_circle_outer 1s linear 3s infinite;
animation: p2_circle_outer 1s linear 3s infinite;
}
/*动画*/
@-webkit-keyframes p2_circle_outer{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(-360deg);
transform: rotate(-360deg);
}
}
@keyframes p2_circle_outer{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(-360deg);
transform: rotate(-360deg);
}
}
#page2 > .p2_circle:before{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
border-radius: 50%;
content: "";
background: url("../images/p2_circle_middle.png") no-repeat center center;
background-size: 100%;
width: 45.625vw;
height: 45.625vw;
-webkit-animation: p2_circle_middle 1s linear 2s infinite;
animation: p2_circle_middle 1s linear 2s infinite;
}
@-webkit-keyframes p2_circle_middle{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(720deg);
transform: rotate(720deg);
}
}
@keyframes p2_circle_middle{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(720deg);
transform: rotate(720deg);
}
}
#page2 > .p2_circle:after{
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
border-radius: 50%;
content: "";
background: url("../images/p2_circle_inner.png") no-repeat center center;
background-size: 100%;
width: 39.9375vw;
height: 39.9375vw;
-webkit-animation: p2_circle_inner 1s linear 1s infinite;
animation: p2_circle_inner 1s linear 1s infinite;
}
@-webkit-keyframes p2_circle_inner{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(-1080deg);
transform: rotate(-1080deg);
}
}
@keyframes p2_circle_inner{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(-1080deg);
transform: rotate(-1080deg);
}
}
#page2 > .p2_2016{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
background: url("../images/p2_2016.png") no-repeat center center;
background-size: 100%;
width: 27.5vw;
height: 6.24vh;
}
/*page3*/
#page3 {
display: none;
-webkit-transition: .5s;
transition: .5s;
}
#page3.fadeIn{
-webkit-transform: translate(0,-100%);
transform: translate(0,-100%);
}
#page3 > .bg{
background: url("../images/p3_bg.jpg") no-repeat center center;
background-size:100%;
}
#page3 > .p3_logo{
width: 34.6875vw;
height: 6.327vh;
position: absolute;
top: 7.82vh;
right: 0;
left: 0;
margin: auto;
background: url("../images/p3_logo.png") no-repeat center center;
background-size: 100%;
}
#page3 > .p3_title{
width: 48.125vw;
height: 50vh;
position: absolute;
top: 21vh;
right: 0;
left: 0;
margin: auto;
background: url("../images/p3_title.png") no-repeat center center;
background-size: 100%;
}
#page3 > .p3_second{
width: 22.8125vw;
height: 41.652vh;
position: absolute;
top: 25.48vh;
left: 3.75vw;
margin: auto;
background: url("../images/p3_couplet_second.png") no-repeat center center;
background-size: 100%;
}
#page3 > .p3_first{
width: 22.8125vw;
height: 41.652vh;
position: absolute;
top: 25.48vh;
right: 3.75vw;
margin: auto;
background: url("../images/p3_couplet_first.png") no-repeat center center;
background-size: 100%;
}
#page3 > .p3_blessing{
width: 32vw;
height: 32vw;
position: absolute;
right: 0;
bottom: 10vh;
left: 0;
margin:auto;
border-radius:50%;
background: url("../images/p3_blessing.png") no-repeat center center;
background-size: 100%;
-webkit-animation: p2_circle_blessing 2s linear infinite;
animation: p2_circle_blessing 2s linear infinite;
}
@-webkit-keyframes p2_circle_blessing{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes p2_circle_blessing{
0%{
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100%{
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}JS部分
window.onload = function(){
//获取元素
var page1 = document.getElementById('page1');
var page2 = document.getElementById('page2');
var page3 = document.getElementById('page3');
var music = document.getElementById('music');
var audio = document.getElementsByTagName('audio')[0];
//当音乐播放完停止时候,自动停止光盘旋转效果,ended为audio的API
audio.addEventListener("ended", function(event){
music.setAttribute("class" , "");
// music.style.animationPlayState = "paused";
// music.style.webkitAnimationPlayState = "paused";
}, false)
//点击音乐图标,控制音乐播放效果
// music.onclick = function(){
// if (audio.paused) {
// audio.play();
// this.setAttribute("class", "play");
// //this.style.animationPlayState = "running"
// //this.style.webkitAnimationPlayState = "running"
// }else{
// this.setAttribute("class" , "");
// //this.style.animationPlayState = "paused"//iPhone6 plus可以兼容
// //this.style.webkitAnimationPlayState = "paused"//iphone6可以兼容,但安卓不兼容
// audio.pause();
// }
// };
music.addEventListener("touchstart", function(event){
if (audio.paused) {
audio.play();
this.setAttribute("class", "play");
}else{
audio.pause();
this.setAttribute("class" , "");
}
} ,false);
page1.addEventListener("touchstart", function(event){
page1.style.display = "none";
page2.style.display = "block";
page3.style.display = "block";
page3.style.top = "100%";
setTimeout(function(){
page2.setAttribute("class" ,"page fadeOut");
page3.setAttribute("class" , "page fadeIn");
},5500);
}, false);
};