プラグインを使用することをお勧めします。これには、理解できる以上のことがあるからです。これには多くのプラグインがあります。ここにリストがあります: http://www.tripwiremagazine.com/2012/12/jquery-carousel.html
Javascript、HTML、および CSS を修正して、正しい方向を示すようにしました:
http://jsfiddle.net/nf5Dh/2/
絶対に配置された container が必要であり、contContent
そのコンテナはコンテナ div 内で移動されます。要素をフロートするだけで、要素をcontContent
隣り合わせにできます。
HTML:
<div id='cont'>
<div id="contContent">
<div id='i1'></div>
<div id='i2'></div>
<div id='i3'></div>
</div>
</div>
CSS:
#cont {
width: 50px;
padding-top: 10px;
background: blue;
height: 50px;
overflow: hidden;
position: relative;
}
#contContent {
height: 50px;
width: 150px;
position: absolute;
top: 0;
left: 0;
}
#contContent > div {
float: left;
display: inline-block;
height: 50px;
width: 50px;
}
#i1 { background: red; }
#i2 { background: green; }
#i3 { background: yellow; }
そしてJS:
$("#contContent > div").click(function(){
$("#contContent").animate({left: "-=50px"},1000);
});
おそらく、すべての div の代わりにan を使用した方がよいでしょうul
。これは、技術的には必要ではありませんが、少なくとも意味論的には正しいです。
<div id="carousel">
<ul id="carouselContent">
<li id="slide1"></li>
<li id="slide2"></li>
<li id="slide3"></li>
</ul>
</div>