龙空技术网

jq给大家手撸一个swiper轮播

博学多才的饼干xN 104

前言:

目前同学们对“tp32判断ajax”都比较重视,大家都想要了解一些“tp32判断ajax”的相关知识。那么小编同时在网摘上搜集了一些有关“tp32判断ajax””的相关内容,希望大家能喜欢,你们一起来了解一下吧!

大家写轮播可能更多的用插件和一些ui库,对于轮播具体是怎么实现的却没有深究过。今天带大家来感受一下自己写轮播不一样的思维。

首先第一步。获取服务端给的图片数据。

这个是通过axios或者ajax通过接口获取的,就不一一述说了。 拿到图片数据。

['微信图片_20220308173249.jpg', '微信图片_20220425172701.png', '微信图片_20220427111835.jpg']复制代码
第二步 循环渲染到界面
function showSwiper () {	var s = '';	var btn = '';	$.each(data, function (idata, dataobj) {	if(idata === pageparam.curent) {	s += `<img class = "elementToFadeInAndOut"    src="/image/${pageparam.tpdir}/${dataobj}"style="width:100%;height:100%;object-fit: cover;" alt="" srcset="" ">`;	btn += `<a href="#" style="width: 20px;height: 20px;text-align: center;line-height: 20px;font-size: 12px;color: #fff;background: #007aff;border-radius: 50%;margin:0 4px;" onclick = "tabFn(${idata})">${idata}</a>`	}else{	s += `<img class = "elementToFadeInAndOut" src="/image/${pageparam.tpdir}/${dataobj}" style="width:100%;height:100%;display:none;object-fit: cover;" alt="" srcset="" ">`;	btn += `<a href="#" style="width: 20px;height: 20px;text-align: center;line-height: 20px;font-size: 12px;color: #000;background: rgba(0, 0, 0, 0.2);border-radius: 50%;margin:0 4px;"  onclick = "tabFn(${idata})" >${idata}</a>`				}			});	$('#swiperlist').html(s);	$('#swiperbtn').html(btn);		}复制代码
第三步 写切换按钮事件
function tabFn (index) {	if(index !== pageparam.curent) {		pageparam.curent = index;		showSwiper();	}}复制代码
第三步 写前一张,后一张按钮事件
function prevFn () {	if(pageparam.curent > 0) {		pageparam.curent --;		showSwiper()	}}function nextFn () {	if(pageparam.curent < data.length-1) {		pageparam.curent ++ ;		showSwiper()			}	}复制代码

总结一下,我这边总的思路是拿到图片数据,渲染视图,渲染视图的同时给img激活样式,动画以及切换btn添加点击事件和激活样式。然后切换的时候重新渲染dom,next和prev的时候重新渲染dom。 最后来张图。

标签: #tp32判断ajax #ajax实现轮播 #tab切换jqajax