(编辑:jimmy 日期: 2024/11/17 浏览:2)
本文实例讲述了jQuery轮播图功能制作方法。分享给大家供大家参考,具体如下:
在写轮播图之前我们先看看这个轮播图完成后的样式是怎样的
素材图片 :
代码
HTML代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <link rel="stylesheet" href="css/index.css" rel="external nofollow" > </head> <body> <div class="banner"> <ul class="banner-img"> <li class="show"><img src="/UploadFiles/2021-04-02/1.jpg">CSS代码
*{ padding: 0; margin: 0; } body{ background: #000; } .banner{ margin-left: 15%; width: 70%; position: relative; } .src{ max-width: 100%; } .banner-img{ list-style: none; } .banner-body{ width: 100%; position: absolute; bottom: 0; background: #fff; } .banner-img>li{ display: none; } .banner-img>.show{ display: block; animation: opcaty 2s; } @keyframes opcaty { from{ opacity: 0.2; } to { opacity: 1; } } .banner-body-img{ margin: 5px; max-width: 60%; list-style: none; } .banner-body-img>li{ display: inline-block; max-width: 18%; } .banner-body-img>.active{ border-bottom: 2px solid #000; animation: left 2s; } @keyframes left { from{ width : 0; } to{ width: 100% } } .banner-text{ width: 25%; position: absolute; bottom: 0; left: 70%; background: #493e56; color: #fff; } .banner-text>div{ overflow:auto; width: 100%; margin: 10px; display: none; } .banner-text>.text-active{ display: block; } .banner-text>div>p{ margin: 10px 0px; }JS代码
// 构建索引值 var currIndex = 0; // 初始化点击事件 initClick(); function initClick() { $(".banner-img li").hover(function () { $(".banner-body").stop().slideUp(); clearInterval(timer); },function () { timer = setInterval("banner()",3000); $(".banner-body").stop().slideDown(); }) $('#bannerUl li').click(function(){ $(this).addClass("active"); $(this).siblings().removeClass("active"); $(".banner-img li").eq($(this).index()).addClass("show"); $(".banner-img li").eq($(this).index()).siblings().removeClass("show"); $(".banner-text div").eq($(this).index()).addClass("text-active"); $(".banner-text div").eq($(this).index()).siblings().removeClass("text-active"); currIndex = $(this).index(); clearInterval(timer); timer = setInterval("banner()",3000); }); } //构建定时器 var timer = setInterval("banner()",3000); function banner() { if (currIndex > 3) { currIndex = 0; } else { currIndex ++; } $(".banner-img li").eq(currIndex).addClass("show"); $(".banner-img li").eq(currIndex).siblings().removeClass("show"); $("#bannerUl li").eq(currIndex).addClass("active"); $("#bannerUl li").eq(currIndex).siblings().removeClass("active"); $(".banner-text div").eq(currIndex).addClass("text-active"); $(".banner-text div").eq(currIndex).siblings().removeClass("text-active"); }如上。
感兴趣的朋友可以使用在线HTML/CSS/JavaScript前端代码调试运行工具:http://tools.jb51.net/code/WebCodeRun测试上述代码运行效果。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery图片操作技巧大全》、《jQuery表格(table)操作技巧汇总》、《jQuery切换特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。