创建了一个旋转木马,但如果有多个旋转木马就会出错.(包括小提琴)
Created a carousel but errors if there is more than one. (fiddle included)
这是小提琴http://jsfiddle.net/rgbjoy/q9VGh/
我想在一个页面上有多个轮播,但不想影响他们所有。我该怎么做呢?
HTML:<div class="project">
<div class="prev"> </div>
<div class="next"> </div>
<ul class="detail">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
</ul>
</div>
和jQuery:
// Slider
$('.detail li:first').before($('.detail li:last'));
$('.next').click(function() {
var itemWidth = $('.detail li').outerWidth() + 10;
var leftIndent = parseInt($(".detail").css("left"), 10) - itemWidth;
$('.detail').animate({
'left': leftIndent
}, 400, function() {
$('.detail li:last').after($('.detail li:first'));
$('.detail').css({
'left': '-200px'
});
});
});
$('.prev').click(function() {
var itemWidth = $('.detail li').outerWidth() + 10;
var leftIndent = parseInt($('.detail').css('left'), 10) + itemWidth;
$('.detail').animate({
'left': leftIndent
}, 400, function() {
$('.detail li:first').before($('.detail li:last'));
$('.detail').css({
'left': '-200px'
});
});
});
—Extra—
如何让所有的li项都变暗,而最左边的项不变暗?
非常感谢你的帮助。
你在做这样的事情:
var itemWidth = $('.detail li').outerWidth() + 10;
$('.detail li')
将在具有detail
类的元素中找到所有<li>
元素。您所需要做的就是将搜索限制到适当的.project
的子节点,您可以通过使用closest
在DOM中查找.project
并使用find
:
var itemWidth = $(this).closest('.project').find('.detail li').outerWidth() + 10;
同理,$(".detail")
变为$(this).closest('.project').find('.detail')
,依此类推。
相关文章:
- 知道为什么我的旋转木马不会自动更改图片吗
- 禁用旋转木马中的下一个按钮和上一个按钮
- 旋转木马;启用内容安全策略时无法工作
- 在引导程序旋转木马中显示下一个图像
- 猫头鹰旋转木马2罐头't使渐变动画工作
- 猫头鹰旋转木马宽度计算错误
- 猫头鹰旋转木马动画未在Chrome中应用
- 猫头鹰旋转木马:无法读取属性'visibleItems'的未定义
- 在Javascript中设置多个小图像(如旋转木马)
- 如何使引导旋转木马保持图像纵横比
- 使用旋转木马在元素上切换类
- 将图像传递到Angular UI引导旋转木马
- 当ons惰性重复检测到更改时,如何使用ons旋转木马刷新列表
- 猫头鹰旋转木马2-拖动方向
- 带有JQuery和CSS的3D旋转木马-渲染不正确
- 如何在猫头鹰旋转木马中滑动所有可见项目,而不是使用上一个/下一个按钮
- Bootstrap 3旋转木马/滑块IE9支持
- Ruby on Rails - 引导旋转木马按钮不起作用
- Sencha Touch 2-选项卡面板中的旋转木马
- 创建了一个旋转木马,但如果有多个旋转木马就会出错.(包括小提琴)