#jquery
Как прописать последовательное переключение слайдов по клику на .prev и .next? То
есть, чтобы при клике на .next, всплывающее окно #popup-box-a заменялось на #popup-box-b
и т.д. При клике на .prev, соответственно, в обратную сторону.
И зациклить круг, чтобы после последнего открывалось #popup-box-a. Пробовала через
name.length, но я не очень дружу с jquery.
Вот кусочек кода.
$(document).ready(function() {
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
id="next-k"');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('body').append('
');
$('[class*=popup-link]').click(function(e) {
e.preventDefault();
e.stopPropagation();
var name = $(this).attr('class');
var id = name[name.length - 1];
var scrollPos = $(window).scrollTop();
$('#popup-box-'+id).show();
$('#prev-'+id).show();
$('#next-'+id).show();
$('html,body').css('overflow', 'hidden');
$('html').scrollTop(scrollPos);
});
Ответы
Ответ 1
Ну зациклить можно как то так, если конечно я правильно понял задачу... $(document).ready(function() { var imgSrcArr = [ "../IMG/arts/ami.png", "../IMG/arts/chibi_chibi.jpg", "../IMG/arts/screaming.jpg", "../IMG/arts/knight.png", "../IMG/arts/nahraen.jpg", "../IMG/arts/regina.png", "../IMG/arts/rin.png", "../IMG/arts/luara.png", "../IMG/arts/moulin_rouge.jpg", "../IMG/arts/DA_contest.png", "../IMG/arts/owl.jpg", "../IMG/arts/eva.png", "../IMG/arts/me.jpg", "../IMG/arts/winter.jpg", "../IMG/arts/minako.jpg", "../IMG/arts/moon_fairy.jpg", "../IMG/arts/flower_fairy.png", "../IMG/arts/luara_and_cassandra.jpg" ]; imgSrcArr.forEach(function(imgSrc, i) { var $domElemToAppend = $( 'prev' + '' + 'next' ); $('body').append($domElemToAppend); if (i + 1 < imgSrcArr.length) { $domElemToAppend.hide(); }; }); $('.prev,.next').on('click', function(e) { var index = parseInt(e.target.id.split('-')[1]); var direction = (e.target.className == 'next') ? 1 : -1; var targetIndex = index + direction; if (targetIndex < 0) { targetIndex = imgSrcArr.length - 1; } else if (targetIndex > imgSrcArr.length - 1) { targetIndex = 0; }; var selector = '#prev-' + index + ',#next-' + index + ',#popup-box-' + index + ',#prev-' + targetIndex + ',#next-' + targetIndex + ',#popup-box-' + targetIndex; $(selector).toggle(); }) });
Комментариев нет:
Отправить комментарий