js幻灯片是怎么实现

JavaScript04

js幻灯片是怎么实现,第1张

1.图片放置:你需要把所有图片放入一个div(这里就把它的class叫做pics吧)中,再把pics放入一个更大的div(就命名为container吧)中,然后把container的宽度设为一张图片的宽度,再给它设置overflow:hidden。然后把pics的宽度设置为所有图片的总宽度。这样方便后面从左向右切换。如下图所示:

2.图片轮播。基本要领是,当点击next按钮的时候,将pics容器的left属性定义到下一张图片的位置,从而移动到下一张图片,例如,假设当前是第二张图片,那么点击按钮的时候应该把pics的left值设为-640*2 + 'px'(因为我这里用的图片都是-640px的)(当然这里还要加入一个计数器,当点到最后一张图片的时候,计数器置0)。

如果你不打算加入平滑移动的动画,那到这里就可以结束了。但是如果你打算加入动画,这里就有一个问题:当移动到最后一张图片的时候,继续点击,图片组会由最后一张长途跋涉回滚到第一张,这样用户体验很不好。理想的状态应当是,当你滚动到最后一张继续滚动的时候,应当像之前滚向下一张一样无缝滚动。不知道我说的清不清楚,大致就是:像手机屏幕一样,当你滑动到最后一屏的时候接着滑动,会直接滑回一屏,也就是循环滑动。

它的基本原理是,你要在正常的图片组的最后面加入一张缓冲图片(src和第一张图片相同),当幻灯片正处于最后一张图片的时候,点击滑动按钮,平滑滑动到这张缓冲图片,当用户下一次点击的时候,再悄悄地把图片置换回真正的第一张图片,然后再执行动画。由于置换回第一张图片的时候是立即执行的,所以用户不会发现图片已经回到了真正的第一张,这就实现了循环滑动。

slideList = ['./images/slide/zc/m1.jpg']这是一个数组的写法,

slideList = ['./images/slide/zc/m1.jpg','./images/slide/zc/m1.jpg','./images/slide/zc/m1.jpg']

多张就加多个路径,中间用逗号隔开

<a target=_self href="javascript:goUrl()">

<span class="f14b">

<script type="text/javascript">

imgUrl1="http://www.webjx.com/img/200406301.jpg"

imgtext1="网页教学网制作素材"

imgLink1=escape("http://www.webjx.com/htmldata/sort/8.html")

imgUrl2="http://www.webjx.com/img/200406302.jpg"

imgtext2="网页教学网网页制作专区"

imgLink2=escape("http://www.webjx.com/htmldata/sort/3.html")

imgUrl3="http://www.webjx.com/img/200406303.jpg"

imgtext3="网页教学网网页特效专区"

imgLink3=escape("http://www.webjx.com/htmldata/sort/5.html")

imgUrl4="http://www.webjx.com/img/200406304.jpg"

imgtext4="网页教学网视频教程"

imgLink4=escape("http://www.webjx.com/htmldata/sort/15.html")

imgUrl5="http://www.webjx.com/img/200406305.jpg"

imgtext5="网页教学网网页制作书籍"

imgLink5=escape("http://www.webjx.com/htmldata/sort/7.html")

var focus_width=280

var focus_height=158

var text_height=18

var swf_height = focus_height+text_height

var pics=imgUrl1+"|"+imgUrl2+"|"+imgUrl3+"|"+imgUrl4+"|"+imgUrl5

var links=imgLink1+"|"+imgLink2+"|"+imgLink3+"|"+imgLink4+"|"+imgLink5

var texts=imgtext1+"|"+imgtext2+"|"+imgtext3+"|"+imgtext4+"|"+imgtext5

document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ focus_width +'" height="'+ swf_height +'">')

document.write('<param name="allowScriptAccess" value="sameDomain"><param name="movie" value="http://www.webjx.com/js/focus.swf"><param name="quality" value="high"><param name="bgcolor" value="#F0F0F0">')

document.write('<param name="menu" value="false"><param name=wmode value="opaque">')

document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">')

document.write('<embed src="pixviewer.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#F0F0F0" quality="high" width="'+ focus_width +'" height="'+ focus_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />') document.write('</object>')

</script>

</span></a><span id=focustext class=f14b></span>