向左滑动js焦点图原理

JavaScript023

向左滑动js焦点图原理,第1张

图片画的有点儿简陋,大致呢就是讲:

1、红框为一个容器DIV,overflow:hidden

2、容器里边有三个横向排列的图片,可以用UL>LI来做。由于容器的OVERFLOW所以2和3是看不见的。

3、下图,调整容器里边元素(如UL)的左外边距为负值,达到图二的效果。

4、之后就是要把1给放到3的后边去,为什么呢?答:为了循环滚动。

5、但是,如果1放到3后边,而UL的左外边距还是负值会出现什么情况呢?答:容器里边显示的3。所以还在把1放到3后边的同时,把UL的左外边距调零。

大致就这个思路吧,做着试试呗!

<html>

<head>

<title>图片的显示</title>

<style type="text/css">

<!--

#bg1 {

position:absolute

width:162px

height:115px

z-index:1

}

#bg2 {

position:absolute

width:162px

height:115px

z-index:1

left: 1px

top: 1px

display:none

}

#b1 {

position:absolute

width:22px

height:21px

z-index:2

left: 60px

top: 201px

}

#b2 {

position:absolute

width:22px

height:24px

z-index:3

left: 84px

top: 203px

}

-->

</style>

<script>

function showbg1(){

document.getElementById("bg1").style.display="block"

document.getElementById("bg2").style.display="none"

}

function showbg2(){

document.getElementById("bg1").style.display="block"

document.getElementById("bg2").style.display="block"

}

</script>

</head>

<body>

<div id="bg1"><img src="mao.jpg" width="160" height="180" />

<div id="bg2"><img src="haitun.jpg" width="160" height="180" /></div>

</div>

<p></p>

<div id="b1" onmousemove="showbg1()"><img src="b1.png" width="22" height="20" /></div>

<div id="b2" onmousemove="showbg2()"><img src="b2.png" width="18" height="19" /></div>

</body>

</html>