Swiper 仿淘宝 电脑版 详情页 轮播图(没有放大镜)

本文介绍了如何使用Swiper库在两个轮播图中实现图片的自动切换,并演示了用户交互触发滑动到特定位置的功能。通过HTML和JavaScript操作,展示了如何设置autoplay、观察者模式和响应点击事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var banner = '';
$.each(info.banner, function (key, vo) {
	// console.log(key);
	// console.log(vo);

	banner += '<div class="swiper-slide">';
	banner += '<img src="' + vo + '" alt="" />';
	banner += '</div>';
});
// console.log(banner);
$('#banner .swiper-wrapper').html(banner);

var banner_obj = new Swiper('.banner', {
	autoplay: true,
	autoplay: {
		disableOnInteraction: false,
	},
	slidesPerView: 'auto',
	observer: true,
	observeParents: true,
	loop: true,
	pagination: {
		el: '.swiper-pagination',
	},
	on: {
		transitionEnd: function () {
			// console.log(this);
			// console.log(this.activeIndex);

			var info = $(this.el)
				.children('.swiper-wrapper')
				.children('.swiper-slide-active')
				.children('img')
				.attr('src');

			// console.log(info);

			$('.banner_s')
				.children('.swiper-wrapper')
				// .children('.swiper-slide-active')
				// .children('img')
				.find('img')
				.removeClass('on');

			$('.banner_s')
				.children('.swiper-wrapper')
				// .children('.swiper-slide-active')
				// .children('img[src="' + info + '"]')
				.find('img[src="' + info + '"]')
				.addClass('on');
		},
	},
});

$('#banner_s .swiper-wrapper').html(banner);

var banner_s_obj = new Swiper('.banner_s', {
	autoplay: false,
	slidesPerView: 3,
	observer: true,
	observeParents: true,
	loop: false,
	pagination: {
		el: '.swiper-pagination',
	},
	on: {
		click: function (e) {
			// console.log(e);
			// console.log(e.target);

			// var info = $(this).attr('src');
			var info = $(e.target).attr('src');
			// console.log(info);

			// console.log(this);
			var index = $(this.el)
				.children('.swiper-wrapper')
				.find('.swiper-slide')
				.index($(e.target).parent());

			// console.log(index);
			var banner_obj_item = banner_obj;
			var banner_obj_key = Object.keys(banner_obj);
			// console.log(banner_obj_key);
			// console.log(isNaN(banner_obj_key[0]));
			if (!isNaN(banner_obj_key[0])) {
				banner_obj_item = banner_obj[0];
			}

			// console.log(banner_obj);
			// console.log(banner_obj[0]);
			// banner_obj[0].slideTo(0);
			if (index !== -1) {
				banner_obj_item.slideTo(index);
			}
		},
	},
});

slideTo Swiper自带的方法,可以跳转到指定位置
Object.keys(demo) JS获取object类型数据的键

Object.keys支持情况
Object.keys支持情况
https://caniuse.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值