精华内容
下载资源
问答
  • web轮播图demo

    2016-01-22 12:13:08
    web轮播图demo
  • 关于html5自定义属性的介绍_WEB前端开发html5为我们提供了以【data-】为前缀定义需要的属性即可设置自定义属性,如【】。本篇文章介绍了使用LayUI实现网页轮播图的方法,具有一定的参考价值,希望对学习Layui的...

    关于html5中自定义属性的介绍_WEB前端开发

    html5为我们提供了以【data-】为前缀定义需要的属性即可设置自定义属性,如【

    】。本篇文章介绍了使用LayUI实现网页轮播图的方法,具有一定的参考价值,希望对学习Layui的朋友有帮助!想要用layui写出来轮播图,需要先下载layui的文档,下载到电脑上就可以了,随便保存到那个地方就行。

    NRNn6b.jpg

    如何使用LayUI实现网页轮播图

    想要用layui写出来轮播图,需要先下载layui的文档,下载到电脑上就可以了,随便保存到那个地方就行,

    这里是下载地址:https://www.layui.com

    用layui写轮播图的好处就是代码少

    基本不用写css的样式,这是很开心的

    毕竟我们都很懒Bootstrap分页表格插件使用教程_WEB前端开发

    本篇文章介绍了Bootstrap分页表格插件的使用方法,bootStrap table获取数据有两种方式,一是通过table的data-url属性指定数据源,二是通过JavaScript初始化表格时指定url来获取数据。

    写代码前先要把刚才下载的layui包引进去:

    轮播图

    然后就简单了,直接放图片就行了:

    放完图片,就该写layui的代码了:

    //第一个轮播图

    layui.use('carousel', function() {

    var carousel = layui.carousel;

    //建造实例化

    carousel.render({

    elem: '#test1',

    width: '100%', //设置背景容器的宽度

    arrow: 'always', //始终显示箭头,不会消失

    //anim: 'updown' //切换动画方式:anim

    //indicator:'outside',

    indicator: 'outside' //这个属性:小圆点在外面

    });

    });

    下面再给抛出几张大图:

    7fe6nm.png

    好了,拿去玩吧

    更多layui知识请关注layui使用教程栏目。

    展开全文
  • web网页轮播图/js控制轮播图

    千次阅读 2018-07-27 08:57:42
    以下是完整网页轮播图完整代码,喜欢的码农可以赋值进行调试使用: <!DOCTYPE html> < html >   < head >   < meta charset = "UTF-8" >   < title > title >   < style ...

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    60

    61

    62

    63

    64

    65

    66

    67

    68

    69

    70

    71

    72

    73

    74

    75

    76

    77

    78

    79

    80

    81

    82

    83

    84

    85

    86

    87

    88

    89

    90

    91

    92

    93

    94

    95

    96

    97

    98

    99

    100

    101

    102

    103

    104

    105

    106

    107

    108

    109

    110

    111

    112

    113

    114

    115

    116

    117

    118

    119

    120

    121

    122

    123

    124

    125

    126

    127

    128

    129

    130

    131

    132

    133

    134

    135

    136

    137

    138

    139

    140

    141

    142

    143

    144

    145

    146

    147

    148

    149

    150

    以下是完整网页轮播图完整代码,喜欢的码农可以赋值进行调试使用:

    <!DOCTYPE html>

    <html>

        <head>

            <meta charset="UTF-8">

            <title></title>

            <style>

                #box{

                    width:660px;

                    height:330px;

                    border:5px solid #e5e5e5;

                    margin:20px auto;

                    position:relative;

                }

                #img{

                    width:660px;

                    height:330px;

                }

                #lunbo-title{

                    height:40px;

                    line-height:40px;

                    position:absolute;

                    right:15px;

                    color:#fff;

                    font-size:14px;

                }

                #lunbo-num{

                    height:40px;

                    line-height:40px;

                    position:absolute;

                    z-index: 11;

                    left:15px;

                    color:#fff;

                    font-size:14px;

                }

                .wrap-prev-next{

                    width:100%;

                    height:40px;

                    position:absolute;

                    z-index: 10;

                    background: #000;

                    line-height:30px;

                    left:0;

                    bottom:-20px;

                    opacity:0.8;

                }

                .prev-next{

                    width:40px;

                    height:50px;

                    line-height:50px;

                    position:absolute;

                    top:145px;

                    font-size:28px;

                    color:#FFF;

                    text-decoration:none;

                }

                a:hover {

                    opacity:0.3;

                 }

                #prev {

                    left:5px;

                }

                #next {

                    right:5px;

                }

            </style>

             

             

             

        </head>

        <body>

     

            <div id="box">

                <a id="imga" href="" target="_blank">

                    <img id="img" />

                </a>

                <!-- <p id="text1"></p><p id="text2">图片文字加载中……</p> -->

                <p class="wrap-prev-next">

                    <a id="lunbo-title">图片文字加载中……</a>

                    <a id="lunbo-num"></a>

                </p>

                <a id="prev" class="prev-next" href="javascript:void(0)">《</a>

                <a id="next" class="prev-next" href="javascript:void(0)">》</a>

            </div>

        </body>

        <script>

            window.onload= function(){

                var oBox=document.getElementById("box");

                var imga = document.getElementById("imga");

                var oImg=document.getElementById("img");

                var oText1=document.getElementById("lunbo-title");

                var p1=document.getElementById("p1");

                var oText2=document.getElementById("lunbo-num");

                var oPrev=document.getElementById("prev");

                var oNext=document.getElementById("next");

                var arrSrc=[

                "http://p2.cri.cn/M00/98/27/CqgNOlsQRXaAMYcqAAAAAAAAAAA746.660x330.jpg",

                "http://p2.cri.cn/M00/98/27/CqgNOlsQRXaAMYcqAAAAAAAAAAA746.660x330.jpg",

                "http://p2.cri.cn/M00/98/27/CqgNOlsQRXaAMYcqAAAAAAAAAAA746.660x330.jpg",

                "http://p2.cri.cn/M00/98/27/CqgNOlsQRXaAMYcqAAAAAAAAAAA746.660x330.jpg",

                "http://storage.j1home.com/Provider/licensePhoto//%25E7%25A4%25BE%25E4%25BC%259A%25E7%25BB%2584%25E7%25BB%2587/%25E5%2585%25AC%25E7%259B%258A/%25E5%2595%2586%25E5%25AE%25B6/3L%25E7%25BE%258E%25E5%258F%2591%25E6%25B2%2599%25E9%25BE%2599/1509514828534.png",

                "http://p2.cri.cn/M00/98/27/CqgNOlsQRXaAMYcqAAAAAAAAAAA746.660x330.jpg",

                "http://storage.j1home.com/Provider/licensePhoto//%25E7%25A4%25BE%25E4%25BC%259A%25E7%25BB%2584%25E7%25BB%2587/%25E5%2585%25AC%25E7%259B%258A/%25E5%2595%2586%25E5%25AE%25B6/3L%25E7%25BE%258E%25E5%258F%2591%25E6%25B2%2599%25E9%25BE%2599/1509514828534.png"];

                var arrTxt=["文案1","文案2","文案3","文案4","文案5","文案6","文案7"];

                var arrHref=["http://news.cri.cn/20180531/8abbc78f-bfed-db9d-c919-728ecb02e0ef.html",

                "http://news.cri.cn/20180601/c64d3cea-2ca9-5e14-ed79-dad56f3b7a99.html",

                "http://news.cri.cn/20180601/c9aee353-5a34-e908-49d2-995955ef4486.html",

                "http://news.cri.cn/20180531/8abbc78f-bfed-db9d-c919-728ecb02e0ef.html",

                "http://news.cri.cn/20180531/8abbc78f-bfed-db9d-c919-728ecb02e0ef.html",

                "http://news.cri.cn/20180531/8abbc78f-bfed-db9d-c919-728ecb02e0ef.html",

                "http://news.cri.cn/20180531/8abbc78f-bfed-db9d-c919-728ecb02e0ef.html"];

                var num=0;

                 

                function lunboFun(){

                    imga.href= arrHref[num]; 

                    oImg.src = arrSrc[num];

                    oText1.innerHTML= num+1 +"/" + arrSrc.length; 

                    oText2.innerHTML=arrTxt[num];

                     

                }

                SliderInit();

                oPrev.onclick = function(){

                    num--;

                    if(num==-1){ 

                        num=arrSrc.length-1;

                    }

                    lunboFun();

                };

                oNext.onclick = function(){

                    num++;

                    if(num==arrTxt.length){

                        num=0;

                    }

                    lunboFun();

                }

     

                function SliderInit() {

                    lunboFun();

                    setInterval(function(){

                        num ++;

                        if (num==arrSrc.length){

                        num = 0;

                    }

                    lunboFun();

                    },5000);

                }

     

     

            }

        </script>

    </html>

    展开全文
  • web实现轮播图

    千次阅读 2017-02-26 13:05:56
    //轮播图 function banner(box,bannerStyle){ var liWidth,buttonBox,indicator,leftButton,buttonHieght,rightButton,methodId,liNumber,boxWidth = box.width(),index = 0; //此处为重点 var cloneObject = ...

    html代码,图片请自行准备

    <!DOCTYPE html>      
    <html>      
        <head>      
            <meta charset="utf-8" />      
            <title></title>      
            <link rel="stylesheet" href="css/banner.css" />    
            <script type="text/javascript" src="js/jquery-1.9.0.min.js"></script>    
            <script src="js/banner.js" ></script>     
        </head>      
        <body style="text-align: center;">      
            <div class="box">      
                <ul>      
                    <li>    
                        <a href="#">
                        	<img src="img/b.jpg"/>    
                        </a>    
                    </li>      
                    <li>    
                        <a href="#">
                        	<img src="img/b.jpg"/>    
                    </a>    
                    </li>      
                    <li>    
                        <a href="#"><img src="img/b.jpg"/>    
                    </a>    
                    </li>      
                </ul>             
            </div>      
            <div>    
            </div>    
            <!--有些刚接触编程可能不知道,为什么要把js代码放着呢?因为在上面的html加载完之后,js里面的元素才不会为空,若放在html元素之前,    
                则在js执行的时候,会出现元素不存在的异常,因为html元素还没加载,程序的执行是从上往下执行的,这点不可不查。-->    
                <script type="text/javascript">  
                var bannerStyle = {selectedStyle:"selectedStyle",indicatorPosition:"left",dotStyle:"dotStyle",indicatorBoxStyle:"indicatorBoxStyle",buttonStyle:"bannerButtonStyle",showButton:true,automaticSwitch:false,buttonMargin:"30px",delay:500};	
               	banner($(".box"),bannerStyle);
            	</script>     
        </body>      
    </html>    




    js代码:

    //轮播图  
    function banner(box,bannerStyle){    
    var liWidth,buttonBox,indicator,leftButton,buttonHieght,rightButton,methodId,liNumber,boxWidth = box.width(),index = 0;       
    //此处为重点    
    var cloneObject = box.children("ul").children("li").first().clone();    
    //此处为重点       
    box.children("ul").append(cloneObject);
    liNumber = box.children("ul").children("li").length;
    box.css("width",boxWidth);
    box.append("<div><button><</button><button>></button></div>");
    box.append("<div></div>");
    buttonBox = box.children("div").eq(0).addClass("buttonBoxStyle");
    indicator = box.children("div").eq(1).addClass(bannerStyle.indicatorBoxStyle);
    leftButton = buttonBox.find("button").eq(0).addClass(bannerStyle.buttonStyle).css("left",bannerStyle.buttonMargin);    
    rightButton = buttonBox.find("button").eq(1).addClass(bannerStyle.buttonStyle).css("right",bannerStyle.buttonMargin);    
    buttonHieght = leftButton.height();
    buttonBox.css("margin-top",-buttonHieght/2);
    box.children("ul").children("li").css("width",boxWidth);
    box.children("ul").children("li").children("a").children("img").css("width",boxWidth);
    box.css("height",box.children("ul").children("li").children("a").children("img").height());
    buttonBox.css("width",boxWidth);
    indicator.css("width",boxWidth);
    liWidth = box.children("ul").children("li").width();
    //添加指示器
    for(var a = 0;a<liNumber-1;a++){    
        indicator.append("<span></span>");    
        indicator.find("span").eq(a).addClass(bannerStyle.dotStyle);    
        if(a == 0){    
        indicator.find("span").eq(0).addClass(bannerStyle.selectedStyle);    
        }    
        if(a == liNumber-2){    
            indicator.find("span").eq(a).css("margin-right","0px");    
        }    
        indicator.find("span").eq(a).click(function(){    
            index = $(this).index();    
            move();    
        });    
    }    
    if(bannerStyle.indicatorPosition=="left"){
    	indicator.css("text-align","left");
    	indicator.css("padding-left","10px");
    }else if(bannerStyle.indicatorPosition=="right"){
    	indicator.css("text-align","right");
    	indicator.css("padding-right","10px");
    }else{
    	indicator.css("left","0px");
    }
       leftButton.click(function(){    
        index--;    
        move();    
       });    
       rightButton.click(function(){    
        index++;    
        move();    
       });    
       function move(){    
        //滑动到最左再接着向左滑动的话便进入    
       if(index == -1){    
        index = liNumber-2;    
        box.children("ul").css("left",-(liNumber-1)*liWidth);    
       }    
       //滑动到最右再接着向左滑动的话便进入    
       if(index == liNumber){    
        box.children("ul").css("left","0px");    
            index = 1;    
       }    
        box.children("ul").stop().animate({left:-index*liWidth},bannerStyle.delay);    
        //设置指示器    
        if(index!=liNumber-1){    
            indicator.children().eq(index).addClass(bannerStyle.selectedStyle).siblings().removeClass(bannerStyle.selectedStyle);    
        }else{    
            indicator.children().eq(0).addClass(bannerStyle.selectedStyle).siblings().removeClass(bannerStyle.selectedStyle);    
        }    
       }    
        if(bannerStyle.showButton){
            buttonBox.css("visibility","visible"); 	
        }else{
        	buttonBox.css("visibility","hidden"); 	
        }
        if(bannerStyle.automaticSwitch)
       setTime();    
       function setTime(){       
       methodId=setInterval(function(){   
                index++;    
                move();    
            },2000);    
         }    
            box.hover(function(){    
                clearInterval(methodId);
                if(!bannerStyle.showButton)
                buttonBox.css("visibility","visible");    
            },    
            function(){      
    			if(bannerStyle.automaticSwitch)
                setTime();  
                if(!bannerStyle.showButton)
                buttonBox.css("visibility","hidden");    
            });     
    }    




    css代码:

    div,ul,li{      
                margin: 0px;      
                padding: 0px;      
            }      
                .box{           
                    overflow: hidden;    
                    width: 100%; 
                    height: auto;         
                    display: inline-block;      
                    position: relative;      
                }      
                .box>ul>li{      
                    float: left;              
                    position: relative;         
                }      
                .box>ul{           
                    width: 99999px;          
                    list-style: none;
                    position: absolute;           
                }      
                /*按钮盒子风格*/
                .buttonBoxStyle{        
                    top: 50%;      
                    position: relative;      
                    width: 100%;          
                    z-index: 1;   
                }     
                /*buttonStyle*/ 
                .bannerButtonStyle{     
                    border-radius: 50%;     
                    color: white;         
                    position: absolute;      
                    font-size: 26px;      
                    border-style: none;      
                    width: 50px;      
                    height: 50px;      
                    background: rgba(0,0,0,0.4);      
                }        
                /*指示器盒子风格*/ 
                .indicatorBoxStyle{      
                	left: 0px;   
                    bottom: 5px;      
                    position: absolute; 
                }
                /*指示器圆点的基础风格*/     
                .dotStyle{    
                    display: inline-block;    
                    width: 8px;    
                    height: 8px;    
                    margin-right: 10px;    
                    background: orangered;    
                    border-radius: 50%;    
                    border: 1px solid white;    
                } 
                /*选中圆点的颜色*/
                .selectedStyle{background: #333333;}   





    效果图:

    (功能)

    1,可以点击左右或点击圆点切换。

    2,鼠标放上去停止滚动。


    初学web不久,如有写的不好或者不规范的地方,望不吝赐教,感谢!



    展开全文
  • 利用swiper快速打造web轮播图-附件资源
  • web轮播图

    2020-05-09 19:15:11
    } 效果图 jQuery编写 鼠标移入,未移入的图片被蒙版蒙住 移动web轮播图(可触屏拖动) .banner{ width: 100%; overflow: hidden; position: ...

    原生JS编写

    function getStyle(obj,name){
    	if(window.getComputedStyle){
    		return getComputedStyle(obj,null)[name];
    	}else{
    		return obj.currentStyle[name];
    	}
    }
    
    function move(obj,attr,target,speed,callback){
    	clearInterval(obj.timer);
    	var current = parseInt(getStyle(obj,attr));
    	if(current>target){
    		speed=-speed;
    	}
    	obj.timer=setInterval(function(){
    		var oldValue = parseInt(getStyle(obj,attr));
    		var newValue = oldValue + speed;
    		if(speed<0&&newValue<target||speed>0&&newValue>target){
    			newValue =target;//超过边界了就放到边界上
    		}
    		obj.style[attr]=newValue+"px";
    		if(newValue==target){
    			clearInterval(obj.timer);
    			callback&&callback();
    		}
    	},30);
    }
    
    
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<style type="text/css">
    			*{
    				margin: 0 auto;
    				padding: 0;
    			}
    			
    			#outer{
    				width: 500px;
    				height: 400px;
    				background-color: rgba(240,255,255,0.5) ;
    				margin: 50px auto;
    				position: relative;
    				overflow: hidden;
    				
    			}
    			#imgList{
    				list-style: none;
    				position: absolute;
    			}
    			
    			#imgList li{
    				float: left;
    			}
    			
    			#nav{
    				position: absolute;
    				bottom: 20px;
    				left: 200px;	
    			}
    			#nav a{
    				float: left;
    				width: 15px;
    				height: 15px;
    				background-color: darkgrey;
    				margin: 0 5px ;
    				opacity: 0.5;
    			}
    			img{
    				width: 500px;
    				height: 400px;
    			}
    			
    		</style>
    		<script src="js/tools.js" type="text/javascript" charset="utf-8"></script>
    		<script type="text/javascript">
    			var timer;
    			var index =0;
    
    			window.onload=function(){
    				imgList =document.getElementById("imgList");
    				imgArr = document.getElementsByTagName("img");				
    				nav = document.getElementById("nav");
    				outer = document.getElementById("outer");
    			
    				allA =document.getElementsByTagName("a");
    //				alert(parseInt(getStyle(imgArr[0],"width"))*imgArr.length+"px");
    				imgList.style.width=(parseInt(getStyle(imgArr[0],"width"))+10)*imgArr.length+"px";
    
    				nav.style.left=(outer.offsetWidth-nav.offsetWidth)/2;
    
    				allA[index].style.backgroundColor="black";
    				for(var i=0;i<allA.length;i++){
    					allA[i].num=i;
    					allA[i].onclick=function(){
    						clearInterval(timer);
    						index=this.num;
    						setA();
    						//alert(index);
    						move(imgList,"left",-500*index,20,function(){
    							autoChange();
    						});
    					};
    				}
    				autoChange();
    				
    			}
    			function setA(){
    				if(index>=imgArr.length-1){
    					index=0;
    					imgList.style.left=0;
    				}
    				for(var i=0;i<allA.length;i++){
    					allA[i].style.backgroundColor="";
    					allA[index].style.backgroundColor="black";
    				}
    			}
    			function autoChange () {
    				timer = setInterval(function(){
    					index++;
    					index=index%imgArr.length;
    					move(imgList,"left",-500*index,20,function(){
    						setA();
    					});
    				},3000);
    			}
    		</script>
    	</head>
    	<body>
    		<div id="outer">
    			<ul id="imgList">
    				<li><img src="img/1.jpg"></li>
    				<li><img src="img/2.jpg"></li>
    				<li><img src="img/3.jpg"></li>
    				<li><img src="img/4.jpg"></li>
    				<li><img src="img/5.jpg"></li>
    				<li><img src="img/1.jpg"></li>
    			</ul>
    			<div id="nav">
    				<a href="javascript:;"></a>
    				<a href="javascript:;"></a>
    				<a href="javascript:;"></a>
    				<a href="javascript:;"></a>
    				<a href="javascript:;"></a>
    			</div>
    		</div>
    	</body>
    </html>
    
    

    效果图
    在这里插入图片描述

    jQuery编写

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<style type="text/css">
    			*{
    				margin: 0 auto;
    				padding: 0;
    			}
    			
    			#outer{
    				width: 500px;
    				height: 400px;
    				background-color: rgba(240,255,255,0.5) ;
    				margin: 50px auto;
    				position: relative;
    				overflow: hidden;
    				
    			}
    			#imgList{
    				list-style: none;
    				position: absolute;
    				background-color: #000000;
    			}
    			#imgList li{
    				float: left;
    			}
    			
    			img{
    				width: 500px;
    				height: 400px;
    			}
    			
    		</style>
    		<script src="js/jquery.min.js" type="text/javascript" charset="utf-8"></script>
    		<script type="text/javascript">
    			$(document).ready(function(){
    				var $imgList =$("#imgList");
    				var $imgArr = $("img");				
    				var $outer = $("#outer");
    				var imgArrWidth = parseInt($imgArr.width());
    				var wid = (imgArrWidth)*$imgArr.length;
    
    				$imgList.css({
    					width:wid
    				});
    				var offset = 0;
    				var timer;
    				function autoShow(){
    					timer = setInterval(function(){
    						offset -= 10;
    						console.log(wid);
    						
    						if(offset<=(-wid+imgArrWidth)){
    							offset=0;
    						}
    						$imgList.css("marginLeft",offset);
    					},50);
    				}
    				autoShow();
    				$("li").hover(function(){
    					clearInterval(timer);
    					$(this).siblings().fadeTo(100,0.5);
    					$(this).fadeTo(100,1);
    				},function(){
    					autoShow();
    					$("li").fadeTo(100,1);
    				})
    			});
    
    		</script>
    	</head>
    	<body>
    		<div id="outer">
    			<ul id="imgList">
    				<li><img src="img/1.jpg"></li>
    				<li><img src="img/2.jpg"></li>
    				<li><img src="img/3.jpg"></li>
    				<li><img src="img/4.jpg"></li>
    				<li><img src="img/5.jpg"></li>
    				<li><img src="img/1.jpg"></li>
    			</ul>
    		</div>
    	</body>
    </html>
    
    

    鼠标移入,未移入的图片被蒙版蒙住
    在这里插入图片描述

    移动web版轮播图(可触屏拖动)

    			<!-- 轮播图 -->
    			<div class="banner">
    				<ul class="bannerImg clearfix">
    					<li>
    						<a href="javascript:;">
    							<img src="./img/l1.jpg" alt="" />
    						</a>
    					</li><li>
    						<a href="javascript:;">
    							<img src="./img/l2.jpg" alt="" />
    						</a>
    					</li><li>
    						<a href="javascript:;">
    							<img src="./img/l3.jpg" alt="" />
    						</a>
    					</li><li>
    						<a href="javascript:;">
    							<img src="./img/l4.jpg" alt="" />
    						</a>
    					</li><li>
    						<a href="javascript:;">
    							<img src="./img/l5.jpg" alt="" />
    						</a>
    					</li><li>
    						<a href="javascript:;">
    							<img src="./img/l6.jpg" alt="" />
    						</a>
    					</li>
    				</ul>
    				<ul class="bannerIndicator">
    					<li class="active"></li>
    					<li></li>
    					<li></li>
    					<li></li>
    					<li></li>
    					<li></li>
    				</ul>
    			</div>
    
    .banner{
    	width: 100%;
    	overflow: hidden;
    	position: relative;
    }
    .bannerImg{
    	/* 实际开发轮播图数量不固定 */
    	/* width: 800%; */
    	/* 添加默认偏移 */
    	/* transform: translateX(-12.5%); */
    	position: relative;
    	/* left: -100%; */
    }
    .bannerImg>li{
    	/* width: 12.5%; */
    	float: left;
    }
    .bannerImg>li img{
    	width: 100%;
    	display: block;
    }
    .bannerIndicator{
    	width: 128px;
    	height: 10px;
    	position: absolute;
    	left: 50%;
    	bottom: 5px;
    	transform: translateX(-50%);
    }
    .bannerIndicator>li{
    	width: 6px;
    	height: 6px;
    	border-radius: 3px;
    	border: 1px solid white;
    	float: left;
    	margin-left: 10px;
    }
    .bannerIndicator>li:first-of-type{
    	margin-left: 0;
    }
    .bannerIndicator>li.active{
    	background-color: #FFFFFF;
    }
    
    window.onload=function(){
    	setBanner();
    }
    	function setBanner(){
    	// 设置修改轮播图的页面结构
    	// 在开始位置添加原始的最后一张图片,在结束位置添加原始的第一张图片
    	var banner = document.querySelector(".jd_banner");
    	var imgBox= banner.querySelector("ul:first-of-type");
    	var firstImg=imgBox.querySelector("li:first-of-type");
    	var lastImg=imgBox.querySelector("li:last-of-type");
    	imgBox.appendChild(firstImg.cloneNode(true));//复制一个最后元素
    	imgBox.insertBefore(lastImg.cloneNode(true),imgBox.firstChild);//将最后一个元素赋值一份放在最前面
    	//设置页面样式,不能在css中写死
    	var lis = imgBox.querySelectorAll("li");
    	var count=lis.length;
    	// alert(count)
    	var bannerWidth = banner.offsetWidth;
    	imgBox.style.width=count*bannerWidth+"px";
    	for(let i=0;i<lis.length;i++){
    		lis[i].style.width=bannerWidth+"px";
    		// console.log(lis[i].style.width)
    	}
    	var index=1;
    	imgBox.style.left=-bannerWidth+"px";
    	// 当屏幕大小变化时,应实时监听
    	window.onresize=function(){
    		bannerWidth = banner.offsetWidth;
    		imgBox.style.width=count*bannerWidth+"px";
    		for(let i=0;i<lis.length;i++){
    			lis[i].style.width=bannerWidth+"px";
    		}
    		imgBox.style.left=(-index*bannerWidth)+"px";
    	}
    	//实现点标记
    	function setIndicator(index){
    		var indicators =banner.querySelector("ul:last-of-type").querySelectorAll("li");
    		for(let i=0;i<indicators.length;i++){
    			indicators[i].classList.remove("active");
    		}
    		indicators[index-1].classList.add("active");
    	}
    	
    	// 实现自动轮播
    	var autobannerTimer;
    	startAutoBanner();
    	function startAutoBanner(){
    		autobannerTimer=setInterval(function(){
    			// index=(index++)%count;
    			index++;
    			// 添加过度效果
    			imgBox.style.transition="left 0.5s ease-in-out"
    			imgBox.style.left=(-index*bannerWidth)+"px";
    			//判断是否到了最后一张
    			setTimeout(function(){
    				if(index==count-1){
    					index=1;
    					imgBox.style.transition="none"
    					imgBox.style.left=(-bannerWidth)+"px";
    				}
    			},500);
    		},2000);
    	}
    	
    	
    	//实现手动轮播
    	var startX,moveX,distanceX;
    	var isEnd=true;
    	imgBox.addEventListener("touchstart",function(e){
    		startX=e.targetTouches[0].clientX;
    		clearInterval(autobannerTimer);
    	});
    	imgBox.addEventListener("touchmove",function(e){
    		if(isEnd==true){
    			moveX=e.targetTouches[0].clientX;
    			distanceX=moveX-startX;
    			console.log(imgBox.style.left);
    			imgBox.style.transition="none"//为了保证效果正常,不会有延迟等不流畅的现象
    			imgBox.style.left=(-index*bannerWidth+distanceX)+"px";
    		}
    	});
    	imgBox.addEventListener("touchend",function(e){
    		isEnd=false;
    		if(Math.abs(distanceX)>100){
    			if(distanceX>0){
    				//上一张
    				index--;
    			}else{
    				index++
    			}
    			imgBox.style.transition="left 0.5s ease-in-out";
    			imgBox.style.left=-index*bannerWidth+"px";
    		}else if(Math.abs(distanceX)>0){//做回弹操作
    			imgBox.style.transition="left 0.5s ease-in-out";
    			imgBox.style.left=-index*bannerWidth+"px";
    		}
    		distanceX=0;
    		moveX=0;
    		startX=0;
    	});
    	imgBox.addEventListener("webkitTransitionEnd",function(){
    		//如果到了最后一张则回到第一张,到第一张则回到最后一张
    		if(index==count-1){
    			index=1;
    			imgBox.style.transition="none";
    			imgBox.style.left=-index*bannerWidth+"px";
    		}else if(index==0){
    			index=count-2;
    			imgBox.style.transition="none";
    			imgBox.style.left=-index*bannerWidth+"px";
    		}
    		setIndicator(index)
    		setTimeout(function(){
    			isEnd=true;
    			clearInterval(autobannerTimer);
    			startAutoBanner();
    		},500)
    	})
    }
    
    
    展开全文
  • CSS盒子模型是什么意思?_WEB前端开发CSS盒子模型都具备内容...CSS实现轮播图效果(附代码)理论基础CSS3 animation 属性和 @keyframes 规则主体思想1、准备相同大小的多个图片2、将要展示图片横排放在一个图片容...
  • web实现动态轮播图

    2018-07-01 17:08:27
    利用HTML代码,实现web3D轮播图。包括js的使用,脚本的使用。
  • web轮播图+侧边栏.zip

    2021-06-03 13:19:37
    web大作业侧边栏+轮播图
  • touch 移动端web手势滑动完成轮播图切换效果,此效果仅仅展示了touch功能的冰山一角,更多功能还需要朋友们努力挖掘。
  • 用于网站前端开发,页面展示效果动态轮播图滚动,且可点击操作切换轮播图展示代码
  • 利用swiper快速打造web轮播图

    千次阅读 2017-07-03 16:49:53
    今天入职第一天,一个android程序员被要求去做h5和... 轮播图在android里是是利用viewpager来打造的。在web里,可以通过第三方swiper快速集成。为什么不自己写?因为自己写浪费时间啊,要效率!!(其实自己也不会写,
  • web前端学会使用图片轮播

    千次阅读 2017-02-12 17:05:25
    怎样过不是过 : 20170211 内容的目标: web前端学会使用...面向的对象:刚刚学习轮播图的同学 学习的步骤:@初级1 . 先学会单纯鼠标点击图片,进行切换 @初级2 . 随时间图片轮流切换,不处理鼠标事件 ..(未完 正在一边学
  • 使用axure 8.0制作web 网页门户网站轮播图demo。学习资源仅供参考。本文件只是一个单纯的demo样式
  • JS实现某东移动web轮播图

    千次阅读 多人点赞 2019-01-03 18:24:00
    移动web轮播图 参考实例,可以从中保存轮播图的图片,这里我们放入uploads的文件夹下,将八张图片一次改为l1.jpg,l2.jpg… https://m.jd.com/ HTML 这里要放入十张图片,因为手指滑动的时候要从第一张滑动...
  • 移动端web轮播图,包括触摸左右滑动切换效果 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=...
  • 主要给大家介绍了利用纯js + transition动画实现移动端web轮播图的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考借鉴,下面来一起看看吧。
  • touchmove//当手指在屏幕来回滑动时候触发 touchend//当手指离开屏幕时候触发 touchcancel//当在屏幕上滑动被迫终止的时候(来电话、有消息) 利用touch相关事件实现移动端常见的滑动效果和常见手势 1.绑定...
  • 从业5年前端纯JS轮播图,逻辑清楚。
  • web中js实现点击切换图片

    千次阅读 2019-05-18 15:51:57
    这个也是一种,底部带文字 用到了隐藏 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css">... co...
  • 在做移动端开发的时候,必不可少的是轮播图,下面这篇文章主要给大家介绍了关于利用纯JS实现移动端web轮播图的相关资料,重要的是结合Tween算法造轮子,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,...
  • web图片切换

    2019-09-09 11:02:06
    <%@ page language=“java” import=“java.util.*” pageEncoding=“ISO-8859-1”%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"?.../"+request.getServerName...
  • web中js实现鼠标移动切换图片

    千次阅读 2019-05-18 15:46:50
    有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学...
  • web图片轮播实现

    2016-01-13 15:39:00
    &lt;!doctype html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset="...轮播&...-- 轮播广告 css start--&gt; &lt;style&gt; .flexslider{position:re
  • 主要介绍了jQuery按需加载轮播图(web前端性能优化)知识,非常不错,具有参考借鉴价值,需要的朋友可以参考下
  • Web前端模板(轮播图排版)

    千次阅读 2018-11-09 08:32:09
    --焦点--> <div class="loading"><img src="images/loading.gif" alt="please wait"> <li><a href="#"><img src="images/ad.jpg"></a> <li><a href="#"><img src="images/ad2.jpg"></a> <li><a href="#...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 99,383
精华内容 39,753
关键字:

web中轮播图