【发布时间】:2017-08-02 10:17:39
【问题描述】:
我正在动态制作图像滑块(不想使用任何hard corded 值)。我可以制作滑块但我有两个问题。
-
为什么我在
ul宽度中需要更多20px。有什么办法不使用这个硬线值。$('#list').css('width',$('#list').find('.box').length*li_Width+20)- 为什么当用户单击
next按钮时,框的一部分left。例如,当用户单击next按钮时,它显示next框而不显示任何部分(绿色框)。 .但是当用户单击下一个按钮时,它会显示blue框的某些部分,为什么?为什么它没有完全滑动?如果用户再次单击下一个按钮,它会再次显示更多红色部分,为什么?
- 为什么当用户单击
这是我的代码 https://plnkr.co/edit/t2yOFkO1QBWOVLFreiXm?p=preview
// 代码在这里
$(function(){
var li_Width =$('#list').find('.box:first').outerWidth(true);
// why 20 pixel is hardcorded
$('#list').css('width',$('#list').find('.box').length*li_Width+20)
$('#next').click(function(){
$('#list').css('margin-left',addToMarginLeft($('#list'),-li_Width))
})
$('#pre').click(function(){
$('#list').css('margin-left',addToMarginLeft($('#list'),li_Width))
})
function addToMarginLeft(elem, pixels) {
var ml = parseFloat(elem.css('margin-left'));
elem.animate({
'margin-left': (ml + pixels) + 'px'
},1000)
}
})
【问题讨论】:
标签: javascript jquery angularjs html css