移动端轮播图 (三张图三张图的轮播)

效果就是像这样 , 三张图三张图的轮播 , 本文会讲vue 和uni-app 中分别怎么实现 , 其实写法是一样的, 只是组件标签不一样

vue中 , 用的vant组件库 

Vant 2 - Mobile UI Components built on Vue

template

<van-swipe class="swipe" :autoplay="2000" indicator-color="black">
          <van-swipe-item v-for="(item,index) in swperList " :key="index">
                    <div class="swpierBox">
                          <div v-for="(item,index) in item" :key="index">
                               <img :src="item.imgUrl" alt="">
                               <span> {{item.txt}} </span>
                               <img src="../assets/home/3.png" alt="" class="btn">
                           </div>
                    </div>
           </van-swipe-item>
</van-swipe>

script

 //直播轮播图列表
                swperList: [
                    [{
                        txt: "旅游是一场最有意义的社交活动, 心情调味剂 ",
                        imgUrl: require("../assets/home/banner1.jpg")
                    }, {
                        txt: "全方位地感受到旅游产品特点 ",
                        imgUrl: require("../assets/home/banner2.jpg")
                    }, {
                        txt: "从而催生了体验式营销 ",
                        imgUrl: require("../assets/home/banner3.jpg")
                    }],
                    [{
                        txt: "旅游是一场最有意义的社交活动, 心情调味剂 ",
                        imgUrl: require("../assets/home/banner1.jpg")
                    }, {
                        txt: "全方位地感受到旅游产品特点 ",
                        imgUrl: require("../assets/home/banner2.jpg")
                    }, {
                        txt: "从而催生了体验式营销 ",
                        imgUrl: require("../assets/home/banner3.jpg")
                    }],


                ]

style

   .swipe {
                height: 4.8rem;

                .swpierBox {
                    height: 3rem;
                    display: flex;

                    div {
                        position: relative;
                        width: 33%;
                        height: 100%;
                        margin: 0.13rem;

                        img {
                            width: 100%;
                        }

                        span {
                            color: #606060;
                            font-size: 0.29rem;

                        }

                        .btn {
                            position: absolute;
                            top: 1.2rem;
                            width: 0.69rem;
                            height: 0.69rem;
                            left: 1.1rem;
                        }
                    }
                }
            }

uni-app中 , 就是用的官网的组件

uni-app官网

template

<swiper class="swipe" indicator-dots circular autoplay interval=2000>
		<swiper-item v-for="(item,index) in liveSwiperList" :key="index">
			 <view class="swpierBox">
					<view v-for="(item,index) in item"  :key="index">
						<img :src="item.imgUrl" alt="">
						<span> {{item.txt}} </span>
						<img src="../../static/home/3.png" alt="" class="btn">
					</view>
			 </view>
		</swiper-item>
					
</swiper>

script

// 直播轮播图列表
				liveSwiperList: [
					[{
						txt: "旅游是一场最有意义的社交活动, 心情调味剂 ",
						imgUrl: require("../../static/home/banner1.jpg")
					}, {
						txt: "全方位地感受到旅游产品特点 ",
						imgUrl: require("../../static/home/banner2.jpg")
					}, {
						txt: "从而催生了体验式营销 ",
						imgUrl: require("../../static/home/banner3.jpg")
					}],
					[{
						txt: "旅游是一场最有意义的社交活动, 心情调味剂 ",
						imgUrl: require("../../static/home/banner1.jpg")
					}, {
						txt: "全方位地感受到旅游产品特点 ",
						imgUrl: require("../../static/home/banner2.jpg")
					}, {
						txt: "从而催生了体验式营销 ",
						imgUrl: require("../../static/home/banner3.jpg")
					}],
				],

style

 .swipe {
				height: 440rpx;

				/deep/ .uni-swiper-dot {
					margin-right: 16rpx;
					width: 28rpx;
					height: 3px;
					border-radius: 2px;
				}



				.swpierBox {
					height: 250rpx;
					display: flex;

					view {
						position: relative;
						width: 34%;
						height: 100%;
						margin: 10rpx;

						img {
							width: 100%;
							height: 100%;
						}

						span {
							color: #606060;
							font-size: 0.29rem;

						}

						.btn {
							position: absolute;
							top: 40%;
							width: 52rpx;
							height: 52rpx;
							left: 40%;
						}

					}
				}
			}

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基于jQuery的轮播图,包含10张片和预览小,并且可以通过URL访问指定片。 HTML代码: ``` <div class="slider"> <div class="slider-main"> <img src="https://picsum.photos/id/1/800/400" alt="Image 1"> <img src="https://picsum.photos/id/2/800/400" alt="Image 2"> <img src="https://picsum.photos/id/3/800/400" alt="Image 3"> <img src="https://picsum.photos/id/4/800/400" alt="Image 4"> <img src="https://picsum.photos/id/5/800/400" alt="Image 5"> <img src="https://picsum.photos/id/6/800/400" alt="Image 6"> <img src="https://picsum.photos/id/7/800/400" alt="Image 7"> <img src="https://picsum.photos/id/8/800/400" alt="Image 8"> <img src="https://picsum.photos/id/9/800/400" alt="Image 9"> <img src="https://picsum.photos/id/10/800/400" alt="Image 10"> </div> <div class="slider-preview"> <img src="https://picsum.photos/id/1/100/50" alt="Image 1"> <img src="https://picsum.photos/id/2/100/50" alt="Image 2"> <img src="https://picsum.photos/id/3/100/50" alt="Image 3"> <img src="https://picsum.photos/id/4/100/50" alt="Image 4"> <img src="https://picsum.photos/id/5/100/50" alt="Image 5"> <img src="https://picsum.photos/id/6/100/50" alt="Image 6"> <img src="https://picsum.photos/id/7/100/50" alt="Image 7"> <img src="https://picsum.photos/id/8/100/50" alt="Image 8"> <img src="https://picsum.photos/id/9/100/50" alt="Image 9"> <img src="https://picsum.photos/id/10/100/50" alt="Image 10"> </div> </div> ``` CSS代码: ``` .slider { position: relative; width: 800px; height: 400px; margin: 0 auto; } .slider-main { position: relative; width: 8000px; } .slider-main img { float: left; width: 800px; height: 400px; } .slider-preview { position: absolute; left: 0; bottom: 0; width: 800px; height: 50px; background-color: rgba(0, 0, 0, 0.5); } .slider-preview img { float: left; margin: 0 5px; width: 100px; height: 50px; opacity: 0.6; cursor: pointer; } .slider-preview img:hover { opacity: 1; } ``` jQuery代码: ``` $(function() { var $sliderMain = $('.slider-main'); var $sliderPreview = $('.slider-preview'); var $images = $sliderMain.find('img'); var $previews = $sliderPreview.find('img'); var currentIndex = 0; // 显示指定片 function showImage(index) { $images.eq(index).fadeIn().siblings().fadeOut(); $previews.eq(index).css('opacity', 1).siblings().css('opacity', 0.6); currentIndex = index; } // 初始化 showImage(0); // 点击预览切换片 $previews.click(function() { var index = $previews.index(this); showImage(index); }); // 通过URL访问指定片 var urlParams = new URLSearchParams(window.location.search); var imageIndex = parseInt(urlParams.get('image')); if (!isNaN(imageIndex) && imageIndex >= 1 && imageIndex <= $images.length) { showImage(imageIndex - 1); } // 自动轮播 setInterval(function() { var nextIndex = (currentIndex + 1) % $images.length; showImage(nextIndex); }, 3000); }); ``` 使用方法: 1. 将以上HTML、CSS和jQuery代码复制到你的网页中,并确保jQuery库已经引入。 2. 在`<img>`标签的`src`属性中修改片的URL。 3. 访问网页时,可以在URL中添加`?image=1`至`?image=10`的参数,例如`http://example.com/slider.html?image=3`,表示直接显示第3张片。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值