首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动画幻灯片水平点击

问动画幻灯片水平点击
EN

Stack Overflow用户
提问于 2011-05-25 12:56:13
回答 4查看 6.5K关注 0票数 0

带有id="content"的Div需要更改内容。我有两个DIV,一个是用id=1和id=2生成的,另一个是id="content"显示的,

但是当我点击某个按钮来改变另一个DIV上的内容时,但是使用平滑的水平动画,就像在图像图库上左右滚动一样。如何在jQuery中做到这一点?

代码语言:javascript
复制
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
      <div id="content">
      </div>
  </body>
</html>
EN

回答 4

Stack Overflow用户

发布于 2011-05-25 16:29:24

只使用CSS的示例based on this SO answer

它使用CSS3 flex作为模板,使用transition来显示幻灯片效果:

​

代码语言:javascript
复制
*{box-sizing:border-box;}
html, body{height:100%; margin:0;}
body{
  font: 16px/1 sans-serif;
  color:#fff;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
nav ul{
  list-style:none;
  padding:0;
  margin:0;
  display: flex;
}
nav ul li{
  flex: 1;
}
nav ul li a{
  display: block;
  text-align:center;
  padding:24px;
  background:#0bf;
  color:#fff;
}
#pages{
  flex-grow: 1;
  display: flex;
  transition: 1s;
}
#pages section{
  overflow: auto;
  min-width: 100%;
  overflow-y: auto;
  padding: 0 32px;
  font-size: 40px;
}

.bg1{background:#0af;}
.bg2{background:#f0a;}
.bg3{background:#0fa;}

#home:target ~ #pages{
  transform: translateX(-0%);
}
#about:target ~ #pages{
  transform: translateX(-100%);
}
#contact:target ~ #pages{
  transform: translateX(-200%);
}
代码语言:javascript
复制
<nav>
  <ul>
    <li><a href="#home" class="bg1">HOME</a></li>
    <li><a href="#about" class="bg2">ABOUT</a></li>
    <li><a href="#contact" class="bg3">CONTACT</a></li>
  </ul>
</nav>

<!-- dummy anchor targets -->
<i class="target" id="home"></i>
<i class="target" id="about"></i>
<i class="target" id="contact"></i>

<div id="pages">
  <section class="bg1">
    <h1>WELCOME</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Iure repellendus impedit, fugiat nostrum totam possimus perferendis aut explicabo, perspiciatis veritatis dolorem recusandae ut ratione similique magnam ex tenetur qui doloribus.</p>
  </section>  
  <section class="bg2">
    <h1>ABOUT</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Doloribus praesentium ipsum esse autem quisquam earum accusantium cumque, ipsa ratione saepe sunt voluptatibus fuga perspiciatis reiciendis qui impedit nam itaque incidunt.</p>
  </section>  
  <section class="bg3">
    <h1>CONTACT</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laborum perspiciatis, quae tempore voluptas modi dignissimos asperiores quibusdam adipisci eligendi facilis eos eius corrupti, numquam nulla dolorum, impedit rem fugit rerum?</p>
  </section>
</div>

​

不要忘记在所需的CSS3属性中添加所需的遗留供应商前缀

票数 4
EN

Stack Overflow用户

发布于 2011-05-25 13:04:34

这是一个多步骤的过程:

1/侦听需要单击的按钮上的单击事件以切换内容

2/在单击时,您可以使用动画功能将要替换的内容从容器div中移出。有点像

代码语言:javascript
复制
$('#id1').animate({'margin-left':'-=500px'},500)

应该行得通。第二个"500“是动画的速度。

[3]然后,您需要使用相同的函数来滑动您希望显示的内容。

4当然,您需要正确的css样式。类似于:

代码语言:javascript
复制
#content{
   width:100px //width of your div
   height : 100px // height of your div
   overflow : hidden;
}
票数 1
EN

Stack Overflow用户

发布于 2011-05-25 13:03:06

我会播放一些和查看资源,以学习如何手动完成它。您可以从检查以下一个开始:http://css-tricks.com/examples/AnythingSlider/

如果不是的话,它就有完整的下载源代码和关于如何实现它的文档。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6124802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档