纯js轮播测试版

这是一个纯js写的轮播测试版,代码有待改进

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <script type="text/javascript" src="js/function.js"></script>
    <style type="text/css">
        .ndiv{
            width: 2060px;
            position: relative;
        }
        .wdiv{
            width: 497px;
            overflow: hidden;
            height: 177px;
            position: relative;
        }
        img{

            margin-left: -4px;
        }
        ul{
margin-top: -50px;

        }
        li{
            list-style: none;
            width: 20px;
            height: 20px;
            float: left;
            background-color: blue;
            text-align: center;
            line-height: 20px;
            border-radius: 50%;
            color: white;
            margin-right: 10px;
        }
        .nu{
            position: relative;
            width: 180px;
            margin:0 auto;
            z-index: 999;
        }
        .wdiv:hover .ltr{
            width: 40px;
            height: 100%;
            position: absolute;
            top: 0px;
            left: 0px;
            background-color: rgba(255,0,255,0.6);

        }
        .wdiv:hover .rtl{
            width: 40px;
            height: 100%;
            position: absolute;
            top: 0px;
            right: 0px;
            background-color: rgba(255,0,255,0.6);

        }
    </style>
</head>
<body>
    <div class="wdiv">
    <div class="ndiv">
        <img src="img/s_banner1.jpg" width="500" >
        <img src="img/s_banner2.jpg" width="500" >
        <img src="img/s_banner3.jpg" width="500" >
        <img src="img/s_banner1.jpg" width="500" >
    </div>//轮播的3张图片,最后一张图伪装成第一张图,达到“好像回到开头”的感觉
    <div class="nu">
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
        </ul>
    </div>//li标签里是切换的按钮(功能未实装)
    <div class="ltr"></div>
    <div class="rtl"></div>
    </div>
    <script type="text/javascript">
        var clo=setTimeout(function(){clo2=setInterval(ds, 1)},2000);
                        i=i+2;
        var time=0;
        getTag(‘div‘)[1].style.marginLeft="0px";
         var i=0;
         test();
            getTag("li")[0].style.background="white";
            getTag("li")[0].style.color="black";
        function ds(){
            if (i<=500) {
                i=i+1;
                time=time-1;
                test();
                getTag("li")[1].style.background="white";
                getTag("li")[1].style.color="black";
                getTag(‘div‘)[1].style.marginLeft=time+"px";
                }else if(i>=501&&i<=502){
                    clearTimeout(clo);
                    clearInterval(clo2);

                     setTimeout(function(){clo2=setInterval(ds, 1)},2000);
                        i=i+1;
                }else if(i>=501&&i<=1000){
                    i=i+1;
                    time=time-1;
                    test();
                    getTag("li")[2].style.background="white";
                    getTag("li")[2].style.color="black";
                    getTag(‘div‘)[1].style.marginLeft=time+"px";
                }else if (i>=1001&&i<=1002) {
                    clearTimeout(clo);
                    clearInterval(clo2);
                    setTimeout(function(){clo2=setInterval(ds, 1)},2000);
                    i=i+1;
                }else if (i>=1002&&i<=1500){
                    i=i+1;
                    time=time-1;
                     test();
                     getTag("li")[0].style.background="white";
                     getTag("li")[0].style.color="black";
                    getTag(‘div‘)[1].style.marginLeft=time+"px";}

                else if (i>=1501&&i<=1502) {
                    i=i+1;
                    clearTimeout(clo);
                    clearInterval(clo2);
                     setTimeout(function(){clo2=setInterval(ds, 1)});

                }else if (i>=1502&&i<=1503){

                    clearTimeout(clo);
                    clearInterval(clo2);

                    getTag("li")[0].style.background="white";
                    getTag("li")[0].style.color="black";
                     setTimeout(function(){clo2=setInterval(ds, 1)},2000);
                     i=0;
                     time=0;

                }
            }
            function test(){
                for (var i = 0; i < 3; i++) {
                getTag("li")[i].style.background="blue";
                getTag("li")[i].style.color="white";
                }
            }//在js中操控定时器来达到滚动的效果,用延时定时器达到停止一会//test函数配合数字初始化背景颜色和字体颜色
    </script>
</body>
</html>

原文地址:https://www.cnblogs.com/LastFire/p/8352923.html

时间: 2024-08-04 13:13:15

纯js轮播测试版的相关文章

js轮播效果图

<!DOCTYPE html><html><head> <title></title> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/> <style type="text/css"> *{ padding: 0px; margin: 0px; } #slideBox{ posi

淡入淡出js轮播广告

淡入淡出js轮播广告,写法类似自动播放的tab选项卡,加入了淡入淡出效果. js代码: function lunbo(contClass, numArr, normalClass, hoverClass){ function getElementsByClass(searchClass,node,tag) { var classElements = new Array(); if ( node == null ) node = document; if ( tag == null ) tag =

问题:关于坛友的一个js轮播效果的实现

需求:点击向前按钮进行向前翻页,向后按钮进行向后翻页,点击中间蓝色小圆圈可以来回自由切换 我的大概思路:先默认显示一个div  然后在原位置在隐藏一个div   给按钮添加click事件,转到下一个时  显示影藏的div,再把原来的div给隐藏掉 lunbo.html代码: 1: <!DOCTYPE HTML> 2: <html> 3: <head> 4: <meta http-equiv="content-type" content=&quo

第六十八天 js轮播图

1.浮动与定位结合使用 浮动与相对定位 //1.两者均参与布局 //2.主浮动布局,相对布局辅助完成布局微调 //3.相对定位布局微调不同于盒模型布局微调,相对定位布局不影响盒子原有位置,就会影响兄弟盒子布局 浮动与绝对定位 // 1.只保留绝对定位布局 // 2.脱离文档流的盒子宽可以交于内部撑开 2.小米更新数据案例 默认活跃状态 1.将初始的li设置一个active类名(拥有该类名就拥有活跃状态表现的属性)] 更改活跃状态 let active_index = 0; // 活跃状态的索引

JS 轮播图(无缝连接的轮播图实现,含代码供参考)

需求:实现轮播图,图片无缝切换,自动播放. 实现效果: 思考一下:在图片列表后面多加一张图片,这张图片是第一张图片(为了确保无缝衔接).图片就是平铺放在一个pic里面的,每次移动就是改变的pic的left值. 来撸代码~~.所有的代码放在最后面,这里只讲一些重要的方法: 为防止懵逼:先贴出封装函数move()的代码供参考 function move(ele, attr, speed, target, callback){ //获取当前的位置 //从左往右进行移动 --- current<targ

根据js轮播图原理写出合理的结构与样式、并实现js交互效果

在JS中,能用 . 的地方一般都可以用 [ ] 取代 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>

js轮播特效

1.自动轮播 <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>图片轮播--无限轮播</title> <style> #tuijian{ border:1px #000000 solid; width:640px; height:500px; background-repeat:no-rep

js轮播(qq幻灯片效果)

<!DOCTYPE html><html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><title>qq幻灯片轮播</title><style type="text/css"> *{margin:0

HTML+CSS +JS 轮播图

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>轮播图</title> 6 <style> 7 #container{ 8 width: 450px; 9 height: 270px; 10 margin: 0 auto; 11 margin-top: 100px; 12 position: relative;