1

我的页面有两个按钮(向左滚动和向右滚动),点击时,页面必须按 div 宽度左右移动(每个 div 都有不同的宽度)。这可以用 jQuery 完成吗?我不知道如何读取当前 div id(靠近边框左侧的一个),以及如何按上一个/下一个 div 的宽度定义滚动(左或右)?

4

2 回答 2

1

单击时增加,减少 Counter var c
这将帮助我们定位所需的 DIV.eq( c )
比我们需要的只是获取所需的 DIV.offset().left并将页面移动到该位置:

jsBin 演示

HTML(将 .box 添加到您的 DIV):

<div class="box" id="01" style="width:200px; height:100px; border:solid 1px; float:left">div01</div>

jQuery:

$(function(){

  var c = 0;
  var boxN = $('.box').length;
  
  $('#left, #right').on('click', function( e ){
    
    e.preventDefault();
   
    c = this.id=='right' ? ++c%boxN : --c ;
    if(c<0){ c=boxN-1; }
    var boxL = $('.box').eq( c ).offset().left;
    
    $('html, body').stop().animate({scrollLeft: boxL});
    
    
  });
  
});
于 2012-12-24T13:10:25.810 回答
0

如果您在谈论某种滑块,那么您有一个 containerdiv 和一个 innerdiv,其中包含项目的总长度。

containerdiv 将隐藏溢出

接下来你控制 div 的位置

这只是一种思维方式...

于 2012-12-24T12:55:36.053 回答