这个是我模仿网易云的音乐界面写的轮播图,主要实现的功能有

1.每隔4秒图片和对应的背景颜色一起切换

2.点击翻页会跳转到相对应的图片以及背景上

3.点击左右翻页,实现顺序切换

<1>HTML结构

<!-- 轮播图 -->
<div class="n-ban">
<div class="n-wrap">
<div href="" class="n-flag">
<!-- 使用url的方式设置背景图片 -->
<div class="backg"> 
<!-- 默认第一张图片显示,其它隐藏 -->                 
<img src="data:image/song/s1.png" alt="" style="display: block;">
<img src="data:image/song/s2.png" alt="">
<img src="data:image/song/s3.png" alt="">
<img src="data:image/song/s4.png" alt="">
<img src="data:image/song/s5.png" alt="">
<img src="data:image/song/s6.png" alt="">
<img src="data:image/song/s7.png" alt="">
<img src="data:image/song/s8.png" alt="">
<img src="data:image/song/s9.png" alt="">
</div>
<!-- 翻页图标 -->
<div class="dots">
<div class="pg" style="background: #C20C0C;"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="pg"></div>
<div class="clear"></div>
</div>
<div class="n-lf"><img src="data:image/fonts2/left.png" alt=""></div>
<div class="n-rg"><img src="data:image/fonts2/right.png" alt=""></div>
</div>
<div class="dowload">
<img src="data:image/song/dw.png" alt="" class="dw1" style="float: left;">
<p class="dw-t">PC 安卓 iPhone WP iPad Mac 六大客户端</p>
</div>
</div>
</div>
     <2>jquery
       

//轮播图实现
var timer;
//!!!!!这里最不该犯错的是i没有初始化导致后面错误不可知
var i = 0;
timer = setInterval(function () {
i++;
//可用取整的方法
if (i >= $(".pg").length) {
i = 0;
}
showBanner();
}, 4000)
function showBanner() {
//改变背景颜色路径
var path = "./image/banner/ln" + i + ".png";
$(".n-ban").css("background-image", "url(" + path + ")");
$(".backg>img").eq(i).show().siblings().hide();
$(".dots").children().eq(i).css("background", "#C20C0C").siblings().css("background", "rgba(255,255,255,0.8)")
}

//点击翻页小图标切换图通过改变变量i实现

$(".pg").click(function () {
i = $(this).index();
showBanner();
});
//点击左右箭头,图跳转
$(".n-lf").click(function () {
//i=9 i=8 i=7 i=6 i=5 i=4 i=3 i=2 i=1                   当i=0点击右箭头i=1,显示i=1的图片;
//i=0 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8                   
//i=-9 i=-8 i=-7 i=-6 i=-5 i=-4 i=-3 i=-2 i=-1        当i=0点击左箭头此时i=-1但是需要显示i=8的图片
i--;
if(i<0){
i=i%(-$(".pg").length)+$(".pg").length;
}
showBanner();
});
$(".n-rg").click(function () {
i++;
i = i % $(".pg").length;
showBanner();
});
 
 

jquery实现轮播图切换的更多相关文章

  1. 用js和jQuery做轮播图

    Javascript或jQuery做轮播图 css样式 <style> a{ text-decoration:none; } .naver{ width: 100%; position:r ...

  2. 用jQuery实现轮播图效果,js中的排他思想

    ---恢复内容开始--- jQuery实现轮播图不用单独加载. 思路: a. 通过$("#id名");选择需要的一类标签,获得一个伪数组 b.由于是伪数组的原因,而对数组的处理最多 ...

  3. 自实现PC端jQuery版轮播图

    最近其他项目不是很忙,被安排给公司的官网项目做一个新的页面(之前没接触公司官网项目),其中有一个用到轮播图的地方,最开始想直接用swiper.js插件实现就好了,可是发现官网项目里之前都没有引入过sw ...

  4. Jquery无缝轮播图的制作

    轮播是html页面中比较常见的一种展现形式,也是基础,把轮播图做好,是排版中比较关键的 1.首先是轮播的html元素放置:做轮播之前,要有一个初步的认识 2.每个元素的位置怎样摆放,也是很关键的,这里 ...

  5. jQuery无缝轮播图思路详解-唯品会

    效果图如上: 需求:图片自动轮播,鼠标移上停止播放,离开恢复播放,箭头切换图片. html代码 <!--轮播图大盒子开始--> <div class="wrap" ...

  6. jQuery封装轮播图插件

    // 布局要求,必须有一个容器,图片和两个按钮,布局方式自定,小圆点样式固定 // <div class="all"> // <img src="img ...

  7. 自己定义jquery插件轮播图

    轮播图-html <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  8. 自己随意写了个简单的依赖jquery的轮播图

    //轮播图 function Switcher(obj){ this.box = $(obj.box); this.width = this.box.width(); this.banner = $( ...

  9. JQuery实现轮播图及其原理

    源码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" name="vi ...

  10. jquery优化轮播图2

    继续优化 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

随机推荐

  1. [转帖]【JVM】常用虚拟机参数及实例

    常用参数表 参数 描述 -XX:+PrintGC 启动java虚拟机后,只要遇到gc,就打印日志 -XX:+PrintGCDetails gc发生时,打印更详细的日志 -XX:+PrintHeapAt ...

  2. Intel 第四代志强可扩展SKU

  3. 查看java所有的线程信息

    最近一直有一个困惑, 不知道如何查看所有的java的线程信息. 今天看blog时发现了一个简单方法 ps -Tp $pid 就可以了 也可以使用 ps- Lfp $pid的方式 这里简单写一下统计方法 ...

  4. 小程序字节转GBK及UTF8

    前段时间在Android原生搞的BLE扫码枪又要移植到小程序上来.本以为小程序不支持BLE的,结果一搜,还真支持-_-|| . 蓝牙部分问题不大,遇到的主要问题是,小程序环境如何对字符编码进行判断以及 ...

  5. Vue基础系统文章07---webpack安装和配置与打包

    1.当前web开发困境 a.文件依赖关系错综复杂 b.静态资源请求效率低 c.模块化支持不友好 d.浏览器对高级js兼容性低 例如:模块代码实现隔行换色 1)在新建空白文件夹中运行:npm init ...

  6. python2排序

    python list cmp排序 对于list的排序一般使用cmp 示例: sorted(xxlist, cmp=self.sortFunc) def sortFunc(self, a, b): r ...

  7. yum 安装失败解决思路$releasever(curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error")

    问题 公司使用刀片机的系统版本是CentOS 7.9.2009(Core),本人在重新安装虚拟机时,也使用对应的系统版本,在安装软件时,yum无法正常使用,一开始觉得,centos的release版本 ...

  8. 淘宝一面:“说一下 Spring Boot 自动装配原理呗?”

    本文已经收录进 Github 95k+ Star 的Java项目JavaGuide .JavaGuide项目地址 : https://github.com/Snailclimb/JavaGuide . ...

  9. 我手写了一个RPC框架。成功帮助读者斩获字节、阿里等大厂offer。

    本着开源精神,本项目README已经同步了英文版本.另外,项目的源代码的注释大部分也修改为了英文. 如访问速度不佳,可放在 Gitee 地址:https://gitee.com/SnailClimb/ ...

  10. 【求助】navicat导入monogdb数据报错

    navicat在进行mongodb数据导入时报错 Navicat Premium 版本 16.1.3 (64-bit) Windows 11 Unknown Internal Error (A7052 ...