1

我有一系列 div,第一个是活动的(显示带有链接的欢迎屏幕)。其他是隐藏的 div 绝对位置左侧:-100%(这些也将包含链接)。

我需要这样做,以便当用户单击链接时,当前 div 向左滑出(平滑),新内容从右侧滑入(平滑)。

视差滑动对我不起作用,因为您可以彼此导航到每张幻灯片,但我不希望网站滚动浏览所有幻灯片以到达目标容器。我只想在到达请求的内容之前有一个滚动序列。

我所看到的大部分内容似乎是与浮动 div 一起使用的滚动脚本,因此,如果您单击链接 3,您将滑过 1、2、3。我需要错过中间的东西!我希望这是有道理的!?

另外,如果可能的话,我希望动态加载幻灯片的内容??但我完全迷失了那个!

这是我到目前为止的代码......

http://jsfiddle.net/ykbgT/5249/

这几乎是我所需要的,但是正如您所看到的,所有的幻灯片都被同时调用了!非常感谢所有帮助!!!

html, body{
width:100%;
height:100%;
padding:0px;
margin:0px; 
overflow: hidden; 
}
.wrapper {
position: absolute;
margin: 0px;
padding: 0px;
width: 100%;
height: 100%;
overflow: hidden;  
}
.slide{
position: absolute;
width: 200%;
height: 100%;
font-size: 30px;
text-align: center;
border: 2px solid black;
left: 100%;
top:0px;
}
.navigation{
font-size:14px;
}
.navigation a{
display:block;
background-color:#000;
color:#fff;
padding:5px;
float:left;
margin-right:5px;
}
#slide1{
background-color:#000;
background-image:url(images/BG1.jpg);
background-position:center top;
background-repeat:no-repeat;
width:100%;
left: 0%;
}
.inner{
width:960px;
height:800px;
background-color:#fff;
margin-left:auto;
margin-right:auto;
position:relative;
}
#slide2{
background-color:#090;

}
#slide3{
background-color:#F30;
}
.content{
width:30%;
height:80%;
float:right;
background-color:#fff;
margin:10%;
}

</style>

</head>

<body>
<div class="wrapper">

<div class="slide" id="slide1">
<div class="inner">
   WELCOME CONTENT HERE
</div>
</div>

<div class="slide" id="slide2">
<div class="content">
      <div>SLIDE 2 DYNAMIC CONTENT LOADS HERE</div>
      <div class="navigation">
      <a class="button">LINK TO SLIDE 3</a>
      <a class="button">LINK TO SLIDE 4</a>
      <a class="button">LINK TO SLIDE 5</a>
      <a class="button">LINK TO SLIDE 6</a>
      <a class="button">LINK TO SLIDE 7</a>
      <a class="button">LINK TO SLIDE 8</a>
      </div>
</div>
</div>

<div class="slide" id="slide3">
<div class="content">
      <div>SLIDE 3 DYNAMIC CONTENT LOADS HERE</div>
      <div class="navigation">
      <a class="button">BACK TO SLIDE 2</a>
      <a class="button">LINK TO SLIDE 4</a>
      <a class="button">LINK TO SLIDE 5</a>
      <a class="button">LINK TO SLIDE 6</a>
      <a class="button">LINK TO SLIDE 7</a>
      <a class="button">LINK TO SLIDE 8</a>
      </div>
</div>
</div>
</div>
4

1 回答 1

0

我已经更新了我的解决方案并将其发布在 jsFiddle 中。我还没有完成解决方案,但按钮 2 和 3 可以工作。

http://jsfiddle.net/Ns7sH/

$('.button2').click(function() {
    var thisElement = $('#slide2')[0]
    var previousElement = thisElement.previousElementSibling;

    $(previousElement).animate({
            left: '-100%',
        }, 1000 );

        $(thisElement).animate({
            left: '0%',
        }, 1000 );

});

它没有 jquery ajax 加载内容,我会在以后有时间时将其放入。

于 2013-03-22T12:37:27.113 回答