0

如何在按钮左/右键单击时使 div 在单行中滑动?
像画廊底部这样的东西

这是我在JSFiddle中的尝试

$( "#right" ).click(function() {
    $( ".block" ).animate({ "left": "+=50px" }, "slow" );
    });
    $( "#left" ).click(function(){
    $( ".block" ).animate({ "left": "-=50px" }, "slow" );
    });
4

1 回答 1

1

这是更新的FIDDLE

而不是left属性尝试scrollLeft

$( "#right" ).click(function() {
    $( ".box" ).animate({
        scrollLeft: '+=' + $( ".box" ).width()
    });
});
$( "#left" ).click(function(){
    $( ".box" ).animate({
        scrollLeft: '-=' + $( ".box" ).width()
    });
});

这为您提供了很大的优势,即您无需检查框是否会超过最大允许位置。

您还需要修改 CSS:

.box {
    width: 600px;
    background-color: #000;
    overflow:hidden;
    white-space: nowrap;
}
.block {
    display:inline-block;
    background-color: #abc;
    width: 90px;
    height: 90px;
    margin: 5px;
    margin-left: 10px;
}

这里最重要的事情(机制工作所必需的)是overflow: hiddenwhite-space: nowrap.box课堂上和display: inline-block课堂.block上。

于 2013-10-08T18:13:11.217 回答