如何在按钮单击时为左右滚动添加动画效果
How can i add animate effect for scrolling right and left on button click?
我是jQuery的新手,正在解决这个问题。在我的document.ready函数中,当我在链接上应用的点击事件发生时,.animate()效果不起作用,因此它不会左右滚动。谁能告诉我这有什么问题,以便它左右滚动。
<html>
<head>
<style type="text/css">
ul.images
{
padding:0px;
margin:0px;
white-space: nowrap;
width:auto;
overflow:hidden;
}
ul.images li
{
line-height:200px;
display: inline;
}
</style>
<script type="text/javascript" src="jquery-1.7.2.js"></script>
<script language="javascript">
var totalWidth;
$(document).ready(function(){
$("a.abc").click(function() {
$("#scroller").animate({"scrollLeft":"-=204"},"slow");
return false;
});
$("a.def").click(function() {
$("#scroller").animate({"scrollRight":"+=204"},"slow");
return false;
});
});
</script>
</head>
<body>
<div style="width:1450px">
<div style="float:left;">
<a class="abc" href="javascript: void(0);" style="display:table-cell;height:155px;vertical-align:middle"><img src="backward.png" height="50" width="50"/></a>
</div>
<div style="width:1220px;float:left">
<ul class="images" id="scroller">
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Tulips.jpg" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="Penguins.jpg" class="image" alt="anuj" width="200"/></li>
</ul>
</div>
<div style="float:left;">
<a class="def" href="javascript: void(0);" style="display:table-cell;height:155px;vertical-align:middle;"><img src="forward.png" height="50" width="50"/></a>
</div>
</div>
</body>
</html>
试试这个:
<div style="width:1050px">
<div style="float:left;">
<a class="abc" href="javascript: void(0);" style="display:table-cell;height:155px;vertical-align:middle">PREV</a>
</div>
<div style="width:1220px;float:left">
<ul class="images" id="scroller">
<li class="list"><img src="http://placehold.it/350&text=TEST1" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="http://placehold.it/350&text=TEST2" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="http://placehold.it/350&text=TEST3" class="image" alt="anuj" width="200"/></li>
<li class="list"><img src="http://placehold.it/350&text=TEST4" class="image" alt="anuj" width="200"/></li>
</ul>
</div>
<div style="float:left;">
<a class="def" href="javascript: void(0);" style="display:table-cell;height:155px;vertical-align:middle;">NEXT</a>
</div>
$("a.abc").click(function() {
$(".images").each(function(){
$(this).animate({"margin-left":"-=204px"},800)
});
});
$("a.def").click(function() {
$(".images").each(function(){
$(this).animate({"margin-left":"+=204px"},800)
});
});
见:http://jsfiddle.net/MMyGE/
语法
:.animate({'css property','value'},'speed'),所以将是 .animate({'left','100px'},'800'),如果你想动画到左,只需在值之前添加一个(减号),否则它会动画到右边。另请注意,animate 不支持所有 css 属性。
相关文章:
- 在窗口中添加滚动条
- 向表单添加滚动功能
- 如何在html5,Android,Phonegap中添加滚动条
- 使用JavaScript向jQuery自动完成添加滚动条
- 在javascript中添加滚动条
- 如何在volusion网站中添加滚动到顶部的浮动按钮
- Fullpage.js.添加滚动延迟
- 如何为模式窗口中呈现的部分视图添加滚动条
- 如何添加滚动到引导框对话框
- 添加滚动条
- JQuery 添加“滚动”按钮,并在有新数据可用时刷新主页
- 如何向脚本窗口添加滚动速度
- 如何在每个窗帘在中间相遇后添加滚动延迟
- 如何通过JavaScript / css在弹出窗口中添加滚动条
- 使用jQuery.off或.unbind删除和添加滚动事件处理程序
- 为动态生成的选择选项添加滚动条
- 向幻灯片放映添加滚动显示样式
- 每当浏览器添加滚动条时,内容都会水平跳转
- 如何在android phonegap中启用/添加滚动条
- 如何在表格中添加滚动条