jQuery左右键滚动

jQuery left and right button scroll

本文关键字:滚动 右键 左右 jQuery      更新时间:2023-09-26

我已经想了几天了,似乎没有取得任何进展。我正在尝试使用图像作为滚动条进行简单的左右滚动,但似乎无法实现。这是我的代码:http://jsfiddle.net/7GrTM/1/

HTML

<div class="outerwrapper">
   <div class="innerwrapper">
     <div class="productsbox">
          <img class="box_image" src="images/productsbox1.png" style="width:222px" alt="this"/>
     </div>
     <div class="spacer"></div>
     <div class='productsbox'>  
          <img class='box_image' src="images/productsbox2.png" style='width:222px' alt="this"/>
     </div>
     <div class="spacer"></div>
     <div class='productsbox'>  
          <img class='box_image' src="images/productsbox3.png" style='width:222px' alt="this"/>                      
     </div>
     <div class="spacer"></div>
     <div class='productsbox'>  
          <img class='box_image' src="images/productsbox4.png" style='width:221px' alt="this"/>  
    </div>
    <div class="spacer"></div>
    <div class='productsbox'>  
         <img class='box_image' src="images/productsbox5.png" style='width:221px' alt="this"/>  
    </div>
    <div class="spacer"></div>
    <div class='productsbox'>  
         <img class='box_image' src="images/productsbox6.png" style='width:221px' alt="this"/>
    </div>
  </div>
</div>
    <div class="productspace">
        <img src="images/arrowleft.png" id="#left" alt="left"/>
        <img src="images/arrowright.png" id="#right" style="padding-left: 10px;" alt="right"/>
    </div>

JS-

$(function () {
    $("#right, #left").click(function () {
        var dir = this.id == "right" ? '+=' : '-=';
        $("#outerwrapper").stop().animate({ scrollLeft: dir + '422' }, 1000);
    });
});

CSS

.spacer {
    width: 20px;
    height: 319px;
    display: inline-block;
}
.outerwrapper {
    margin: 0px auto;
    width: 1050px;
    height: 323px;
    display: inline-block;
    overflow: hidden;
}
.innerwrapper {
    width: 1600px;
    height: 322px;
    margin: 0 auto;
    display: inline-block;
    overflow: hidden;
}

任何帮助都将不胜感激。

您的ID是错误的,您将它们命名为#left#right,而不仅仅是leftright。在您的JSfiddle中,您已经成功地将其设置为id:#left1#right1

解决方案:将ID改为leftright,这样您就有了:

<div class="productspace">
    <img src="images/arrowleft.png" id="left" alt="left"/>
    <img src="images/arrowright.png" id="right" style="padding-left: 10px;" alt="right"/>
</div>

您还试图将类outerwrapper作为id访问div,而不是作为class访问div。要么将outerwrapper更改为ID,使其成为<div id="outerwrapper">,要么将jquery更改为查找类:$(".outerwrapper")(在我看来,以前的解决方案更优越,所以更改div ID)。