<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>樓層切換</title>
<style>
* {
padding: 0;
margin: 0;
}
li {
list-style: none;
}
.main img {
width: 850px;
height: 700px;
float: left;
}
.title {
width: 850px;
height: 50px;
text-align: center;
line-height: 50px;
}
.floor {
position: fixed;
top: 20px;
right: 20px;
display: none;
}
.floor ul li {
width: 70px;
height: 30px;
text-align: center;
line-height: 30px;
cursor: hand;
cursor: pointer
}
.liStyle {
background-color: red;
}
.loading {
background: url("image/loading.gif") no-repeat center center;
}
#back {
cursor: hand;
cursor: pointer;
}
</style>
</head>
<body>
<div class="main" id="main">
<h3 class="title">圖片欣賞</h3>
<img as="image/1.jpg" />
<img as="image/2.jpg" />
<img as="image/3.jpg" />
<img as="image/4.jpg" />
<img as="image/5.jpg" />
<img as="image/6.jpg" />
<img as="image/7.gif" />
<img as="image/8.jpg" />
<img as="image/9.jpg" />
<img as="image/10.jpg" />
</div>
<div class="floor" id="floor">
<ul id="floorUl">
<li>第一張</li>
<li>第二張</li>
<li>第三張</li>
<li>第四張</li>
<li>第五張</li>
<li>第六張</li>
<li>第七張</li>
<li>第八張</li>
<li>第九張</li>
<li>第十張</li>
</ul>
<p id="back">返回頂部</p>
</div>
<script>
var main = document.getElementById("main");
var floor = document.getElementById("floor");
var image = main.getElementsByTagName("img");
var floorUl = document.getElementById("floorUl");
var li = floorUl.getElementsByTagName("li");
var back = document.getElementById("back");
window.onload = window.onscroll = function() {
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
var height = document.documentElement.clientHeight || document.body.clientHeight;
for(var i = 0; i < image.length; i++) {
image[i].className = "loading";
if(delay(image[i]).top < scrollTop + height) {
image[i].src = image[i].getAttribute("as");
}
}
if(scrollTop >= image[0].offsetTop) {
floor.style.display = "block";
} else {
floor.style.display = "none";
}
var num = 0;
for(var i = 0; i < image.length; i++) {
if(scrollTop >= image[i].offsetTop) {
num = i;
}
li[i].className = "";
}
li[num].className = "liStyle";
for(var i = 0; i < li.length; i++) {
li[i].onclick = function() {
for(var j = 0; j < li.length; j++) {
if(this == li[j]) {
document.documentElement.scrollTop = image[j].offsetTop;
document.body.scrollTop = image[j].offsetTop;
}
}
}
}
}
var time = null;
back.onclick = function() {
function goBack() {
var ss = document.documentElement.scrollTop || document.body.scrollTop;
ss -= 50;
document.documentElement.scrollTop = ss;
document.body.scrollTop = ss;
if(ss <= 0) {
clearInterval(time);
}
}
time = setInterval(goBack, 1);
}
function delay(obj) {
var l = 0;
var t = 0;
while(obj) {
l = l + obj.offsetLeft;
t = t + obj.offsetTop;
obj = obj.offsetParent;
}
return {
left: l,
top: t
};
}
</script>
</body>
</html>
樓層效果
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...