Я пытаюсь сделать слайд слайда вниз (оживляющий видимый) с помощью jquery. Анимация не гладкая и прыгает в конце.jQuery SlideDown прыгает в Bootstrap 3 ряд
<div class="container">
<div class="row">
<ul class="items">
<li class="item col-sm-4">as</li>
<li class="item col-sm-4">sdf</li>
<li class="item col-sm-4">sdf</li>
<li class="item col-sm-4">as</li>
<li class="item col-sm-4">sdf</li>
<li class="item col-sm-4">sdf</li>
</ul>
<ul class="more-items">
<li class="item col-sm-4">as</li>
<li class="item col-sm-4">sdf</li>
<li class="item col-sm-4">sdf</li>
</ul>
</div
<div class="row">
<a id="show-more-btn" class="show-more-items">
<i class="glyphicon glyphicon-plus"></i>
<span class="text">Vis flere</span>
</a>
</div>
</div>
Это хорошо известная проблема и вызвана jquery, не зная высоты элемента для анимации. Поэтому я сделал функцию на документе «готов» для вычисления высоты скользящего элемента перед укрытием.
$(document).ready(function() {
$('.more-items').css('height',function(i,h){
alert(h);
$(this).hide();
return h;
});
$("#show-more-btn").on("click", function(e) {
e.preventDefault();
$(".more-items").slideDown();
});
});
Это работает отлично, но когда элемент находится внутри BS3 сетки грести высота всегда 0px ...
Почему это и как я могу убедиться, что элемент имеет высоту внутри BS сетки ?
Я не могу использовать функцию «collapse()» BS, потому что я не могу загрузить BS js-файл на сайт, над которым я работаю.
ПРИМЕРПеретащите окно достаточно широко, чтобы увидеть 3 колонки.
https://jsfiddle.net/vn1z6z9L/.
мне не нужно slideToggle(), мне нужно только slideDown. В вашем примере slideDown все еще прыгает !! – olefrank
ради знания, чего вы пытаетесь достичь, что означает прыжок слайда? – Sachin
Если вы развернете окно в своем jsfiddle, вы увидите список, разбивающийся на три столбца. Это сетка Bootstrap. Затем вы нажимаете кнопку «Показать еще», чтобы сделать список слайдом вниз. В самом конце слайда анимация негладкая. Он идет слишком далеко вниз и возвращается на место. Вот что я имею в виду! – olefrank