Когда вы нажимаете на карусель img, вы заметите, что он переместится в центр в окне просмотра. Тем не менее, я также хочу, чтобы это произошло, когда вы нажимаете .owl-thumb-items
(пронумерованная кнопка). Я попытался добавить класс большого пальца к скрипту следующим образом: $('.owl-carousel, .owl-thumb-item')
. Но это явно не сработало.Невозможно получить кнопку, чтобы центрировать div с помощью JQuery
$('.owl-carousel, .owl-thumb-item').on('click', function(e) {
var el = $(".lazyOwl", this);
var elOffset = el.offset().top;
var elHeight = el.height();
var windowHeight = $(window).height();
var offset;
if (elHeight < windowHeight) {
offset = elOffset - ((windowHeight/2) - (elHeight/2));
}
else {
offset = elOffset;
}
var speed = 700;
$('html, body').animate({scrollTop:offset}, speed);
});
var animations = new Array();
// queue all
$(".owl-thumb-item").each(function() {
animations.push($(this));
});
// start animating
doAnimation(animations.shift());
function doAnimation(image) {
image.fadeIn("slow", function() {
// wait until animation is done and recurse if there are more animations
if (animations.length > 0) doAnimation(animations.shift());
});
}
http://jsfiddle.net/8bJUc/660/
Я просто заметил, что если нажать на любой из каруселей после первой, она будет прокручиваться назад и центр до первой карусели, а не в настоящее время. Пожалуйста, попробуйте (imdarrien.com). – user2252219
С помощью нескольких элементов вышеуказанный код не будет работать. Ваш селектор должен быть для родителя, который является общим как между карусели, так и с большими пальцами, а затем оттуда найдите конкретный элемент lazyOwl, который вы ищете. Глядя на ваш сайт, у вас есть div # 2 через div # 5, но нет div # 1. Если вы добавите div # 1, вы можете добавить общий класс, например «owlWrapper», между всеми этими div и затем использовать следующее для поиска совы в обработчике кликов: var el = $ ('. LazyOwl', $ (это) .closest ('div.owlWrapper')); –
[Fiddle] (http://jsfiddle.net/tschettler/8bJUc/664/) –