У меня есть горизонтальный список перетаскивания jquery-ui, содержащийся в оболочке, в которой элементы добавляются динамически. (Ширина каждого элемента 223px и каждый раз, когда добавляется новый элемент, ширина списка увеличивается на 223px)Содержащий дочерний элемент внутри родителя в css
$("#list_wrapper").animate({
width: "+=446"
}, 'slow')
$("#list_items").animate({
width: "+=223"
}, 'slow')
Стиль для этих двух элементов:
#list_wrapper{
width:672px;
position:relative;
}
#list_items {
height: 290px;
width: 672px;
position: relative;
padding: 0 0 0 2px;
z-index: 0;
cursor: e-resize;
border-width: 0 2px;
}
Теперь, чтобы просмотрите список, мы можем либо перетащить список, либо я создал навигационную кнопку для удобства. Кнопки навигации переложить на «#list_items» элементы 223px вправо или влево, каждый раз, когда они щелкнули:
$("#btn_next").click(function() {
$("#list_items").animate({
left: "-=223"
}, 100);
});
$("#btn_prev").click(function() {
$("#list_items").animate({
left: "+=223"
}, 100);
Для того, чтобы убедиться, что список не выходит из поля зрения, я добавил эти свойства .draggable.
$("#list_items").draggable({
axis: "x",
containment: "parent"
});
Это гарантирует, что список остается в контейнере («# cart_wrapper») при перетаскивании НО, когда используются кнопки навигации, этот метод не удается. Итак, есть ли какой-либо трюк css, который можно применять для сохранения списка внутри его родителя при использовании кнопок навигации?