1

我有 4 个 div 内联,使用 php 我为每一个分配一个唯一的 id,在任何时候只有一个 div 是可见的,这是结果 html:

<div id="contentslider">
    <div class="cs_wrapper">
        <div class="cs_slider">
            <div id="1" class="cs_article">
                SLIDE 1
            </div>
            <div id="2" class="cs_article">
                SLIDE 2
            </div>
            <div id="3" class="cs_article">
                SLIDE 3
            </div>
            <div id="4" class="cs_article">
                SLIDE 4
            </div>
        </div>
    </div>
</div>

和CSS:

.contentslider {
  position:relative;
  display:block;
  width:480px;
  height:400px;
  margin:0 auto;
  overflow:hidden;
}

.cs_wrapper {
  position:relative;
  display:block;
  width:480px;
  height:400px;
  margin:0;
  padding:0;
  overflow:hidden;
}
.cs_slider {
  position:absolute;
  width:10000px;
  height:100%;
  margin:0;
  padding:0;
}
.cs_article {
  float:left;
  position:relative;
  top:0;
  left:0;
  display:block;
  width:480px;
  height:400px;
  margin:0 auto;
  padding:0;
}

我正在尝试编写一个 jquery 函数,该函数给出一个 id 它将动画并转到选定的幻灯片,但我不知道从哪里开始,有什么建议吗?

编辑:如果您需要,这是一个jsFiddle 。

4

3 回答 3

1

使用该功能制作了一个快速的jsFiddle。正如上面对您问题的评论,我将 ID 更改为非数字。

这是功能:

function GoToSlide(id) {
    $(".cs_article:visible").slideUp("slow");
    $("#" + id).slideDown("slow");
}
于 2013-02-07T16:51:27.180 回答
0

Martin Angelov 提供了一个极好的教程,用于创建与您所描述的非常相似的应用程序:Beautiful Apple-style Slideshow Gallery With CSS & jQuery

于 2013-02-07T17:20:01.163 回答
0

我更喜欢隐藏所有的方法。

这是在不使用 css 的情况下使用箭头键导航幻灯片。

$(".cs_article").hide();
$(".cs_article").eq(0).show();
$(window).keydown(function(e) {
    curSlide = $(".cs_slider .cs_article:visible");
    if (e.which==37 &&  curSlide.prev()[0]) { 
        curSlide.hide(); curSlide.prev().show();
    } else if (e.which==39 && curSlide.next()[0]) {
        curSlide.hide(); curSlide.next().show();
    }
})

如果你想展示一个,就展示一个

$(".cs_article").hide();
$("#3.cs_article").show();  // to show slide 3 only
于 2013-02-07T19:24:53.520 回答