zoukankan      html  css  js  c++  java
  • 前台特效(8)购物车

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <title></title>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <style type="text/css">
                .list{
                    display:block;
                    width:300px;
                    height:20px;
                    border:solid 1px #cccccc;
                    margin: 5px 0;
                }
                .add{
                    display: block;
                    height: 20px;
                    width: 230px;
                    float: left;
                }
                .index{
                    display:block;
                    width:30px;
                    height: 20px;
                    float: left;
                    border: solid 1px red;
                }
                .check{
                    display:block;
                    width:30px;
                    height: 20px;
                    float: right;
                    border: solid 1px red;
                }
                .price{
                    color: red;
                }
                #totalPrice{
                    display: block;
                    width:300px;
                    height: 30px;
                    position: absolute;
                    bottom:5px;
                    border: solid 1px #cccccc;
                    text-align: center;
                }
                .num_v{
                    width:20px;
                }
            </style>
            <script type="text/javascript" src="http://common.cnblogs.com/script/jquery.js"></script>
    
            <script type="text/javascript">
                //+ -
                function add(obj) {
                    var i = $('.b_add').index(obj);
                    addCar($($('.pro_c')[i]).text(), $($('.price_c')[i]).text(), 1);
                    numInd(i, 1);
                }
                function minus(obj) {
                    var i = $('.b_minus').index(obj);
                    addCar($($('.pro_c')[i]).text(), $($('.price_c')[i]).text(), -1);
                    numInd(i, -1);
                }
                //添加商品
                function addCar(pro, price, num) {
                    var ind = inArray($('.pro_c'), pro);
                    if (ind) {
                        ind = ind - 1;
                        $($('.num_v')[ind]).val(parseInt($($('.num_v')[ind]).val()) + num);
                        if (parseInt($($('.num_v')[ind]).val()) == 0) {
                            delpro(pro);
                        }
                    } else {
                        $('#checkout ul').append('<li><span class="pro_c">' + pro + '</span>---<span class="num_c"><a href="#" onclick="add(this)" class="b_add">+</a><input type="text" class="num_v" value="' + num + '"/><a href="#" onclick="minus(this)" class="b_minus">-</a></span>--------¥<span class="price_c">' + price + '</span></li>');
                        $('#shopCar').val(parseInt($('#shopCar').val()) + 1);
                    }
                    total();
                }
                //创建购物车
                function createCar(pro, price, num) {
                    //清空内容
                    $('#checkout').html('');
                    //创建商品目录
                    $('#checkout').append('<ul><li><span class="pro_c">' + pro + '</span>---<span class="num_c"><a href="#" onclick="add(this)" class="b_add">+</a><input type="text" class="num_v" value="' + num + '"/><a href="#" onclick="minus(this)" class="b_minus">-</a></span>--------¥<span class="price_c">' + price + '</span></li></ul>');
                    //数量索引
                    //创建总价
                    $('#checkout').append('<span id="totalPrice"></span>');
                    //标示状态
                    $('#shopCar').val(1);
                    //计算总价
                    total();
                }
                //删除商品
                function delpro(pro) {
                    var off = confirm('确认删除');
                    if (off) {
                        $($('#checkout ul li:contains(' + pro + ')')).remove();
                        $('#shopCar').val(parseInt($('#shopCar').val()) - 1);
                    }
                    if (parseInt($('#shopCar').val()) <= 0) {
                        $('#checkout').html('');
                        $('#checkout').html('<p>空空如也,连颗老鼠屎都没有!</p>');
                        $('#shopCar').val('none');
                    }
                }
                //数量索引
                function numInd(ind, num) {
                    if ($($('.index')[ind]).html() == '') {
                        $($('.index')[ind]).html(1);
                    } else {
                        $($('.index')[ind]).html(parseInt($($('.index')[ind]).html()) + num);
                        if ($($('.index')[ind]).html() == 0) {
                            $($('.index')[ind]).html('');
                        }
                    }
                }
                //计算价格
                function total() {
                    var total = 0;
                    for (var i = 0; i < $('.pro_c').length; i++) {
                        total = total + parseInt($($('.num_v')[i]).val()) * parseInt($($('.price_c')[i]).text());
                    }
                    $('#totalPrice').html('' + total);
                }
                function inArray(arr, val) {
                    for (var i = 0; i < arr.length; i++) {
                        if ($(arr[i]).text() == val) {
                            return i + 1;
                        }
                    }
                    return false;
                }
                $(function() {
                    //初始化
                    $('#shopCar').val('none');
                    $('.add').each(function(i) {
                        //商品列表触发点击事件
                        $(this).click(function() {
                            //判断结算台是否为空
                            if ($('#shopCar').val() == 'none') {
                                createCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                numInd(i, 1);
                            } else {
                                addCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                numInd(i, 1);
                            }
                        });
                    });
                    //减少商品数量
                    $('.index').each(function(i) {
                        $(this).click(function() {
                            var ind = inArray($('.pro_c'), $($('.pro')[i]).text());
                            if (ind) {
                                addCar($($('.pro')[i]).text(), $($('.price')[i]).text(), -1);
                                numInd(i, -1);
                            } else {
                                if ($('#shopCar').val() == 'none') {
                                    createCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                    numInd(i, 1);
                                } else {
                                    addCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                    numInd(i, 1);
                                }
                            }
                        });
                    });
                    //删除商品
                    $('.check').each(function(i) {
                        $(this).click(function() {
                            var ind = inArray($('.pro_c'), $($('.pro')[i]).text());
                            if (ind) {
                                delpro($($('.pro')[i]).text());
                            } else {
                                if ($('#shopCar').val() == 'none') {
                                    createCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                } else {
                                    addCar($($('.pro')[i]).text(), $($('.price')[i]).text(), 1);
                                }
                            }
                        });
                    });
                })
            </script>
        </head>
        <body>
            <div style="400px;height:400px;border:solid 1px #cccccc;float:left;margin:0 40px;">
                <ul>
                    <li class="list">
                        <span class="index"></span><span class="add"><span class="pro">商品1</span>---¥<span class="price">23</span></span><span class="check"></span>
                    </li>
                    <li class="list">
                        <span class="index"></span><span class="add"><span class="pro">商品2</span>---¥<span class="price">41</span></span><span class="check"></span>
                    </li>
                    <li class="list">
                        <span class="index"></span><span class="add"><span class="pro">商品3</span>---¥<span class="price">36</span></span><span class="check"></span>
                    </li>
                    <li class="list">
                        <span class="index"></span><span class="add"><span class="pro">商品4</span>---¥<span class="price">1000</span></span><span class="check"></span>
                    </li>
                </ul>
            </div>
            <div style="300px;min-height:300px;border:solid 1px #cccccc;float:left;margin:0 40px;text-align: center;position:relative;">
                <!--使用hidden 储存数据-->
                <input type="hidden" id="shopCar" value="none"/>
                <h4>购物车</h4>
                <div id="checkout" style="300px;min-height:250px">
                    <p>空空如也,连颗老鼠屎都没有!</p>
                </div>
            </div>
        </body>
    </html>
  • 相关阅读:
    softmax in pytorch
    python使用xlrd读取excel数据
    redis集群扩容(添加新节点)
    redis集群添加新节点
    重新创建redis集群的注意事项
    在三台服务器,搭建redis三主三从集群
    UI自动化测试工具Airtest/Poco
    单个机器部署redis集群模式(一键部署脚本)
    内置函数二
    内置函数一
  • 原文地址:https://www.cnblogs.com/longdidi/p/3017882.html
Copyright © 2011-2022 走看看