• jquery——幻灯片(只动一屏)


    制作天天生鲜的幻灯片部分

    贴了全部代码:

    main.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>天天生鲜-首页</title>
        <link rel="stylesheet" type="text/css" href="css/reset.css">
        <link rel="stylesheet" type="text/css" href="css/main.css">
        <script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
        <script type="text/javascript" src="js/slide.js"></script>
    </head>
    <body>
        <div class="header_con">
            <div class="header">
                <div class="welcome fl">欢迎来到天天生鲜</div>
                <div class="user_info fr">
    
                    <div class="user_login_link fl">
                        <a href="#">登陆</a>
                        <span>|</span>
                        <a href="#">注册</a>
                    </div>
    
                    <div class="user_welcome fl">
                        欢迎您 : <em>张三</em>
                    </div>
    
                    <div class="user_shopping fl">
                        <span>|</span>
                        <a href="#">我的购物车</a>
                        <span>|</span>
                        <a href="#">我的订单</a>
                    </div>
                </div>
            </div>
        </div>
        <div class="logo_bar">
            <div class="logo fl">
                <a href="#"><img src="images/logo.png"></a>
            </div>
            <div class="search fl">
                <form>
                    <!--placeholder:输入框中有“搜索”两个字,输入文字后消失的一种样式-->
                    <input type="text" name="" placeholder="搜索" class="input_text fl">
                    <input type="button" name="" value="搜索" class="input_btn fr">
                </form>
            </div>
            <div class="chart fr">
                <a href="#" class="fl">我的购物车</a>
                <span class="fr">0</span>
            </div>
        </div>
        <div class="sub_menu_con">
            <div class="sub_menu">
                <h1 class="fl">全部商品分类</h1>
                <ul class="fl">
                    <li><a href="">首页</a></li>
                    <li><a href="">手机生鲜</a></li>
                    <li><a href="">抽奖</a></li>
                </ul>
            </div>
        </div>
        <div class="center_con" >
            <ul class="main_menu fl">
                <li><a href="" class="fruit">新鲜水果</a></li>
                <li><a href="" class="seafood">海鲜水产</a></li>
                <li><a href="" class="meat">猪肉牛肉</a></li>
                <li><a href="" class="egg">禽类蛋品</a></li>
                <li><a href="" class="vegetable">新鲜蔬菜</a></li>
                <li><a href="" class="ice">速冻食品</a></li>
            </ul>
    
            <div class="slide_con fl">
                <ul class="slide">
                    <li><a href=""><img src="images/slide.jpg" alt="幻灯片"></a></li>
                    <li><a href=""><img src="images/slide02.jpg" alt="幻灯片"></a></li>
                    <li><a href=""><img src="images/slide03.jpg" alt="幻灯片"></a></li>
                    <li><a href=""><img src="images/slide04.jpg" alt="幻灯片"></a></li>
                </ul>
    
                <div class="prev"></div>
                <div class="next"></div>
    
                <ul class="points">
    
                </ul>
            </div>
            <div class="adv fl" >
                <a href=""><img src="images/adv01.jpg" alt="广告"></a>
                <a href=""><img src="images/adv02.jpg" alt="广告"></a>
            </div>
        </div>
    
        <div class="common_model">
            <div class="common_title">
    
                <h3 class="fl">新鲜水果</h3>
    
                <ul class="fl">
                    <li><span>|</span></li>
                    <li><a href="#">草莓</a></li>
                    <li><a href="#">荔枝</a></li>
                    <li><a href="#">牛油果</a></li>
                </ul>
    
                <a href="#" class="more fr">查看更多&gt;</a>
            </div>
    
            <div class="common_goods_list">
                <div class="goods_banner fl"><img src="images/banner.jpg" alt="商品banner">
                </div>
                <ul class="good_list fl">
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                </ul>
            </div>
        </div>
        <div class="common_model">
            <div class="common_title">
    
                <h3 class="fl">新鲜水果</h3>
    
                <ul class="fl">
                    <li><span>|</span></li>
                    <li><a href="#">草莓</a></li>
                    <li><a href="#">荔枝</a></li>
                    <li><a href="#">牛油果</a></li>
                </ul>
    
                <a href="#" class="more fr">查看更多&gt;</a>
            </div>
    
            <div class="common_goods_list">
                <div class="goods_banner fl"><img src="images/banner.jpg" alt="商品banner">
                </div>
                <ul class="good_list fl">
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                </ul>
            </div>
        </div>
        <div class="common_model">
            <div class="common_title">
    
                <h3 class="fl">新鲜水果</h3>
    
                <ul class="fl">
                    <li><span>|</span></li>
                    <li><a href="#">草莓</a></li>
                    <li><a href="#">荔枝</a></li>
                    <li><a href="#">牛油果</a></li>
                </ul>
    
                <a href="#" class="more fr">查看更多&gt;</a>
            </div>
    
            <div class="common_goods_list">
                <div class="goods_banner fl"><img src="images/banner.jpg" alt="商品banner">
                </div>
                <ul class="good_list fl">
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                    <li>
                        <h4>草莓</h4>
                        <a href="#"><img src="images/good_pic.jpg" alt="商品图片"></a>
                        <p>$ 5.00</p>
                    </li>
                </ul>
            </div>
        </div>
        <div class="footer">
            <div class="links">
                <a href="">关于我们</a>
                <span>|</span>
                <a href="">联系我们</a>
                <span>|</span>
                <a href="">招聘人才</a>
                <span>|</span>
                <a href="">友情链接</a>
            </div>
            <p>CopyRight © 2016 北京天天生鲜信息技术有限公司 All Rights Reserved<br />
    
    电话:010-****888 京ICP备*******8号</p>
        </div>
    </body>
    </html>

    main.css:

    body{
        font-family: 'Microsoft YaHei';
        color:#666;
        font-size:12px;
    }
    
    /*顶部状态条*/
    .header_con{
        height:29px;
        background-color: #f7f7f7;
        border-bottom:1px solid #ddd;
    }
    
    .header{
        width:1200px;
        height:29px;
        margin:0 auto;
    }
    
    .welcome{
        font:12px/29px 'Microsoft YaHei UI';
    }
    
    .user_login_link,.user_welcome, .user_shopping{
        height:29px;
        line-height:29px;
    }
    
    .user_login_link a, .user_shopping a{
        color:#666;
    }
    
    .user_login_link a:hover,.user_shopping a:hover{
        color:#f80;
    }
    
    .user_login_link span, .user_shopping span{
        margin:0 15px;
        color:#cecece;
    }
    
    /*把这个块藏起来*/
    .user_welcome{
        display:none;
    }
    
    .user_welcome em{
        color:#f80;
    }
    
    
    /*左侧菜单样式*/
    .logo_bar{
        width:1200px;
        height:115px;
        margin:0 auto;
    }
    
    .logo{
        width:151px;
        height:59px;
        margin:29px 0 0 17px;
    }
    
    .search{
        width:616px;
        height:38px;
        border:1px solid #37ab40;
        margin:34px 0 0 123px;
        /*雪碧图的放大镜作背景图*/
        background:url(../images/icons.png) 10px -335px no-repeat;
    }
    
    .search .input_text{
        width:470px;
        height:37px;
        border:0px;
        margin-left:37px;
        outline:none;
    }
    
    .search .input_btn{
        width:100px;
        height:38px;
        background-color: #37ab40;
        border:0;
        font:14px/38px 'Microsoft YaHei UI';
        color:#fff;
        /*鼠标变成手*/
        cursor:pointer;
    }
    
    .chart{
        width:200px;
        height:40px;
        margin-top:34px;
    }
    .chart a{
        width:158px;
        height:38px;
        border:1px solid #ddd;
        font:14px/38px 'Microsoft YaHei UI';
        color:#37ab40;
        text-indent:56px;
        background:url(../images/icons.png) 10px -300px no-repeat #f7f7f7;
    }
    
    .chart span{
        width: 40px;
        height:40px;
        background-color:#f80;
        font:bold 18px/40px 'Microsoft YaHei UI';
        text-align:center;
        color:#fff;
    }
    
    .sub_menu_con{
        height:40px;
        border-bottom:2px solid #37ab30
    }
    
    .sub_menu{
        width:1200px;
        height:40px;
        margin:0 auto;
    }
    
    .sub_menu h1{
        width:200px;
        height:40px;
        background-color: #37ab40;
        font:14px/40px 'Microsoft YaHei UI';
        text-align:center;
        color:#fff;
    }
    
    .sub_menu ul{
        overflow:hidden;
    }
    
    .sub_menu li{
        float:left;
        height:14px;
        padding:0 25px;
        border-left:1px solid #666;
        margin-left:-2px;
        margin-top:13px;
    }
    
    .sub_menu li a{
        font:14px/14px 'Microsoft YaHei UI'
        color:#666;
    }
    
    .sub_menu li a:hover{
        color:#f80;
    }
    
    .center_con{
        width:1200px;
        height:270px;
        margin:0 auto;
    }
    
    .center_con .main_menu{
        width:200px;
        height:270px;
        overflow:hidden;
    }
    
    .center_con .main_menu li{
        width:198px;
        height:44px;
        border:1px solid #eee;
        margin-top:-1px;
        background:url(../images/icons.png) 166px -260px no-repeat;
    }
    
    .center_con .main_menu li a{
        display:block;
        width:198px;
        height:44px;
        text-indent:71px;
        font:14px/44px 'Microsoft YaHei UI';
        color:#333;
        background:url(../images/icons.png) 33px -260px no-repeat;
    }
    
    .center_con .main_menu li .fruit{
        background-position: 30px 0px;
    }
    
    .center_con .main_menu li .seafood{
        background-position: 30px -41px;
    }
    
    .center_con .main_menu li .meat{
        background-position: 30px -87px;
    }
    
    .center_con .main_menu li .egg{
        background-position: 30px -132px;
    }
    
    .center_con .main_menu li .vegetable{
        background-position: 30px -174px;
    }
    
    .center_con .main_menu li .ice{
        background-position: 30px -220px;
    }
    
    /*幻灯片样式*/
    
    .slide_con{
        width:760px;
        height:270px;
        position:relative;
        overflow:hidden;
    
    }
    
    /*.slide_con .slide{*/
        /*position:relative;left:0;top:0;760px;height:270px;*/
    /*}*/
    
    .slide_con .slide li{
        width:760px;
        height:270px;
        position:absolute;
        left:0;
        top:0;
    
    }
    
    .prev{
        width:15px;
        height:23px;
        /*绝对定位*/
        position: absolute;
        left:11px;
        top:122px;
        background:url(../images/icons.png) -2px -388px no-repeat;
        cursor: pointer;
    }
    
    .next{
        width:15px;
        height:23px;
        /*绝对定位,叠加图片*/
        position: absolute;
        left:732px;
        top:122px;
        background:url(../images/icons.png) -2px -428px no-repeat;
        cursor: pointer;
    }
    .points{
        position: absolute;
        width:100%;
        height:11px;
        left:0;
        bottom:9px;
        text-align:center;
        font-size:0px;
    }
    
    .points li{
        width:11px;
        height:11px;
        display:inline-block;
        background-color: #9f9f9f;
        margin:0 5px;
        /*设置圆角,半径为高度的一半*/
        border-radius:50%;
        cursor:pointer;
    }
    
    .points .active{
        background-color: #cecece;
    }
    
    .adv{
        width:240px;
        height:270px;
    }
    .adv a{
        float:left;
        width:240px;
        height:135px;
    }
    
    /*解决图片下方3像素白边的情况*/
    .adv a img{
        display:block;
    }
    
    .common_model{
        width:1200px;
        height:340px;
        margin:18px auto 0;
    }
    
    .common_title{
        height:38px;
        border-bottom: 2px solid #42ad46;
    }
    
    .common_model h3{
        font:bold 16px/38px 'Microsoft YaHei UI';
        color:#37ab40;
    }
    
    .common_model .common_title ul{
        height:12px;
        margin:13px 0 0  20px;
    }
    
    .common_model .common_title li{
        float:left;
        margin:0 10px;
    }
    
    
    .common_model .common_title li a{
        /*微软雅黑默认有行高*/
        color:#666;
    }
    
    .common_model .common_title li a:hover{
        color:#f80;
    }
    
    .common_model .common_title .more{
        height:38px;
        line-height:38px;
        color:#666;
    }
    
    .common_model .common_title .more:hover{
        color:#f80;
    }
    
    .common_model .common_goods_list{
        height:300px;
        width:1200px;
    }
    
    .common_model .common_goods_list .goods_banner{
        width:200px;
        height:300px;
    }
    
    .common_model .common_goods_list .good_list{
        width:1000px;
        height:300px;
    }
    
    .common_model .common_goods_list .good_list li{
        width:249px;
        height:299px;
        border-right:1px solid #ededed;
        border-bottom:1px solid #ededed;
        float:left;
    }
    
    .common_goods_list .good_list li:hover{
        width:248px;
        height:298px;
        border:1px solid #ff0;
    }
    
    .common_goods_list .good_list li h4{
        height:52px;
        font:14px/52px 'Microsoft YaHei UI';
        color:#666;
        text-align:center;
    }
    
    .common_goods_list .good_list li a{
        display:block;
        height:180px;
        width:180px;
        margin:0 auto;
    }
    
    .common_goods_list .good_list li p{
        height:52px;
        font:bold 20px/52px 'Microsoft YaHei UI';
        color:#c40000;
        text-align: center;
    }
    
    .footer{
        height:145px;
        border-top:2px solid #4ab14e;
        margin-top:30px;
    }
    
    .footer .links{
        text-align:center;
        /*有边框就没有margin-top塌陷了*/
        margin-top:40px;
    }
    
    .footer .links a{
        color:#4e4e4e;
    }
    
    .footer .links a:hover{
        color:#f80;
    }
    
    .footer .links span{
        color:#4e4e4e;
        margin:0 10px;
    }
    
    .footer p{
        text-align: center;
        line-height:27px;
        color:#4e4e4e;
        margin-top:10px;
    }

    reset.css:

    /*不要用网上现成的,不用的标签不要写,会影响性能,标签组选择器*/
    body,ul,p,h1,h2,h3,h4,h5,h6,dl,dd,input,select,form{
        margin:0;
        padding:0;
    }
    
    /*让h标签继承body类设置的字体大小*/
    h1,h2,h3,h4,h5,h6{
        font-size:100%;
    }
    
    /*去掉默认. 标签选择器*/
    ul{
        list-style: none;
    }
    
    /*不倾斜*/
    em{
        font-style:normal;
    }
    
    /*去掉下划线*/
    a{
        text-decoration:none;
    }
    
    /*去掉IE下,图片做链接时产生的边框*/
    img{
        border:none;
    }
    
    /*清除margin-top塌陷和清除浮动*/
    .clearfix:before, .clearfix:after{
        content:"";
        /*一个HTML元素和它的子节点像table元素一样。使用基于表格的CSS布局,
        使我们能够轻松定义一个单元格的边界、背景等样式,
        而不会产生因为使用了table那样的制表标签所导致的语义化问题。*/
        display:table;
    }
    
    .clearfix:after{
        /*清除左右两边浮动*/
        clear:both;
    }
    
    .clearfix{
        zoom:1;
    }
    
    .fl{
        float:left;
    }
    
    .fr{
        float:right;
    }

    slide.js:

    $(function () {
    
        var $li = $('.slide_con .slide li');
        var len = $li.length;
        var $prev = $('.prev');
        var $next = $('.next');
        var timer = null;
    
        //将要运动过来的li
        var nowli = 0;
        //当前要离开的li
        var prevli = 0;
    
        //除了第一个li,其他的li放到右边
        $li.not(':first').css({left:760})
    
        $li.each(function (index) {
            // 选择li:var $sli = $('li');
            // 创建li:var $sli = $('<li>')
            var $sli = $('<li>');
            if(index==0)
            {
                $sli.addClass('active');
            }
            //将创建的li增加到points类中
            $sli.appendTo('.points');
    
        });
    
        var $points = $('.points li');
    
        $points.click(function () {
            nowli = $(this).index();
            if(nowli==prevli){return;}
            move();
            $(this).addClass('active').siblings().removeClass('active');
        })
    
        $prev.click(function () {
            nowli--;
            move();
            $points.eq(nowli).addClass('active').siblings().removeClass('active');
        })
    
        $next.click(function () {
            nowli++;
            move();
            $points.eq(nowli).addClass('active').siblings().removeClass('active');
        })
    
        //鼠标放在幻灯片处时停止播放,鼠标离开时继续播放
        $('.slide_con').mouseenter(function(event){
            clearInterval(timer);
        });
    
        $('.slide_con').mouseleave(function () {
            timer = setInterval(autoplay,4000);
        })
    
        //自动播放
        //函数没有括号!
        timer = setInterval(autoplay,4000);
        
        function autoplay() {
            nowli++;
            move();
            $points.eq(nowli).addClass('active').siblings().removeClass('active');
        }
        
    
        function move(){
            if(nowli<0){
                nowli = len-1;
                prevli = 0;
    
                $li.eq(nowli).css({left:-760});
                //点的很快得时候会有bug,stop()用来解决这个bug
                $li.eq(prevli).stop().animate({left:760});
                $li.eq(nowli).stop().animate({left:0});
                prevli = nowli;
                //停止进行下面的if判断
                return;
            }
    
            if(nowli>len-1){
                nowli = 0;
                prevli = len-1;
    
                $li.eq(nowli).css({left:760});
                $li.eq(prevli).stop().animate({left:-760});
                $li.eq(nowli).stop().animate({left:0});
                prevli = nowli;
                return;
            }
    
            if(nowli>prevli){
                $li.eq(nowli).css({left:760});
                $li.eq(prevli).stop().animate({left:-760});
            }
            else {
                $li.eq(nowli).css({left:-760});
                $li.eq(prevli).stop().animate({left:760});
            }
            $li.eq(nowli).stop().animate({left:0});
            prevli = nowli;
        }
    })
  • 相关阅读:
    利用vuex 做个简单的前端缓存
    EFcore 解决 SQLite 没有datetime 类型的问题
    dotnet 清理 nuget 缓存
    .net 5 单文件模式发布异常 CodeBase is not supported on assemblies loaded from a single-file bundle
    ubuntu 开启ip转发的方法
    Vue-ECharts 6 迁移记录
    System.Text.Json 5.0 已增加支持将Enum 由默认 Number类型 转换为String JsonStringEnumConverter
    Windows 10 LTSC 2019 正式版轻松激活教程
    Mac 提示Permission denied
    苹果手机代理 charles 提示(此链接非私人连接)
  • 原文地址:https://www.cnblogs.com/gaoquanquan/p/9221012.html
Copyright © 2020-2023  润新知