jquery实现图片的无线循环

在网站中有一种图片的展示方式是无限轮播,下面用的是jquery实现

html代码

<div class="banner">
        <ul>
            <li><img src="img/top1.jpg"/></li>
            <li><img src="img/top2.jpg"/></li>
            <li><img src="img/top3.jpg"/></li>
            <li><img src="img/top4.jpg"/></li>
            <li><img src="img/top5.jpg"/></li>
        </ul>
        <ol>
            <li style="background:#fff;"></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
        </ol>
</div>

css代码

注意:因为我这块截的代码是写在移动端的代码 但是原理是一样的,在css中ul的宽度必须是里面li的宽度和高度的乘积,而外面的banner是每一个li的宽度并且需要用overflow,实现隐藏超出的部分

.banner{width:100%;height:7.745rem;overflow:hidden;position:relative;}
.banner ul{height:7.745rem;}
.banner ul li{width:16rem;height:100%;floaT:left;}
.banner ul li img{width:100%;height:100%;}
.banner ol{width:7.5rem;position:absolute;bottom:10px;left:50%;margin-left:-2.75rem;}
.banner ol li{cursor:pointer;width:0.2rem;margin-right:1rem;height:0.2rem;border-radius:50%;float:left;border:2px solid #fff;}
.banner ol li:hover{background:#fff;}

jquery

说明在当前这个移动之前,将li的第一个复制,并且将复制的放到最后一个,然后开始移动移动完之后,将整个盒子的margin-left值瞬间置为0,然后将li的第一个去掉。

function move(obj){
                    var li_W=$("."+obj+" ul").find(‘li‘).eq(0).width();
                    var li_L=$("."+obj+" ul").find(‘li‘).length;
                    $("."+obj+" ul").css("width",li_W*li_L+"px");
                    var index=0;
                    setInterval(function(){
                        index++;
                        $("."+obj+" ul li:last").after($("."+obj+" ul li:first").clone(true));//将 第一个复制到最后面
                        $("."+obj+" ul").animate({"margin-left":-li_W+"px"},1000,function(){
                            $("."+obj+" ul").css({"margin-left":0+"px"});
                            $("."+obj+" ul li:first").remove();
                            $("."+obj+" ol li").css("background","rgba(0,0,0,.0)");
                            index=index>=5?0:index++;
                            $("."+obj+" ol li").eq(index).css("background","#fff");
                        });
                    },2000);
                };move("banner");
时间: 2024-11-06 09:32:20

jquery实现图片的无线循环的相关文章

利用jQuery实现图片无限循环轮播(不借助于轮播插件)

原来我主要是用Bootstrap来实现轮播图的功能,而这次是用javaScript和jQuery来实现图片无限循环轮播! 用到的技术有:html.css.JavaScript(少).jQuery(主要) 效果展示: html代码: <body> <div id="container"><!-- left:-600px 表示:页面加载出现的第一张图片是1.jp --> <div id="list" style="le

jQuery实现图片延迟加载

在浏览有些网站时,发现图片是在下拉滚动条时才加载,这是一个很不错的用户体验.这一效果是通过JavaScript 编写的 jQuery 插件实现的,它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预加载的处理方式正好是相反的.在包含很多大图片长页面中延迟加载图片可以加快页面加载速度. 浏览器将会在加载可见图片之后即进入就绪状态. 在某些情况下还可以帮助降低服务器负担. 有些WordPress主题也具备了此功能. 目前我用的这个热点

Android 如何实现 焦点图的 无线循环滑动的状态?

参考网址:http://my.oschina.net/xsk/blog/119167 原本的实现原理: 这里是一种模拟方式 实现的 "无线的循环", 其实并不是 真正意义上的无线循环. 而是 设置的值很大,用于 当做 无线循环. 代码: package stu.hades; import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet;

使用jQuery实现图片懒加载原理

原文:https://www.liaoxuefeng.com/article/00151045553343934ba3bb4ed684623b1bf00488231d88d000 在网页中,常常需要用到图片,而图片需要消耗较大的流量.正常情况下,浏览器会解析整个HTML代码,然后从上到下依次加载<img src="xxx">的图片标签.如果页面很长,隐藏在页面下方的图片其实已经被浏览器加载了.如果用户不向下滚动页面,就没有看到这些图片,相当于白白浪费了图片的流量. 所以,淘

jquery 放大图片

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

jquery实现图片预加载

使用jquery实现图片预加载提高页面加载速度和用户体,本就为大家详细分析jquery图片预加载的实现原理. 什么时候使用图片预加载? 如果页面使用了很多不是最初加载便可见的图片,有必要进行预加载: $.preloadImages = function () { for (var i = 0; i < arguments.length; i++) { $('img').attr('src', arguments[i]); }};$.preloadImages('img/hover-on.png'

jQuery Lightbox图片放大预览

简介:jQuery Lightbox图片放大预览代码是一款可以在用户点击页面中的小图片时,将该图片的高清版本以Lightbox的方式放大显示在页面的中间,提高用户的体验度. 效果展示 http://hovertree.com/texiao/jqimg/6/ 效果图如下: 源码下载:http://hovertree.com/h/bjaf/hdhgnftp.htm HTML文件代码: <!DOCTYPE html> <html lang="zh"> <head

JQuery实现图片切换(自动切换+手动切换)

学习JS的时候本来积攒了很多有趣的小例子,但是苦于没有找到一些好的平台来展示这些JS效果.今天发现了RunJS这个分享代码的平台,迫不及待得想跟大家分享. 在浏览各大商城网站的时候,或者某些网站的首页,都会展示与本网站相关的一些实时切换的图片, 本文就给大家分享一个用jQuery实现图片自动切换的例子. 主页核心代码(Default.aspx): <!DOCTYPE html> <html> <head> <meta http-equiv="Conten

jquery实现图片和视频缓冲效果插件

jquery实现图片和视频缓冲效果插件: 创建一个动画效果的缓冲样式插件,插件可以开始.暂停.结束等功能,代码来源于网络希望对网络有所帮助. 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.51texiao.cn/" /> <titl