Notepad++Good Luck To You!

电商加入购物车代码解析

<div class="gtbox cut">

      <h1>Apple iPhone 7 (A1660) 国行版</h1>

      <p class="mt8 c888"></p><p><span style="color: rgb(225, 46, 46); font-family: arial; font-size: 13px; line-height:150%">首次支持IP67级防水防尘,后置1200万前置700万像素拍照,配备4颗闪光灯,支持光学防抖,采用全新A10 Fusion处理器,性能更强更省电</span></p><p></p>

      <div class="gatt module mt10 cut">

        <dl>

          <dt>商品货号:</dt>

          <dd>00100117376</dd>

        </dl>

                <dl class="mt5">

          <dt>今日售价:</dt>

          <dd class="npri"><i>¥</i><font id="nowprice" data-price="5199.00">6699.00</font></dd>

        </dl>

              </div>

      <div class="cutline mt10"></div>

      <div class="gatt module">

                        <dl class="mt15">

          <dt>颜色:</dt>

          <dd class="opt" data-checked="">  <a data-key="146" data-price="0.00" class="">银色<i class="icon"></i></a>  <a data-key="145" data-price="0.00" class="">金色<i class="icon"></i></a>  <a data-key="144" data-price="0.00" class="cur">玫瑰金<i class="icon"></i><i class="icon"></i><i class="icon"></i></a>  <a data-key="143" data-price="0.00">亮黑色</a>  <a data-key="142" data-price="0.00" class="">黑色<i class="icon"></i></a>  </dd>

        </dl>

                <dl class="mt15">

          <dt>机身存储:</dt>

          <dd class="opt" data-checked="">  <a data-key="141" data-price="1500.00" class="cur">256GB<i class="icon"></i></a>  <a data-key="140" data-price="800.00" class="">128GB<i class="icon"></i><i class="icon"></i><i class="icon"></i></a>  <a data-key="139" data-price="0.00" class="">32GB<i class="icon"></i><i class="icon"></i></a>  </dd>

        </dl>

                        <form method="post" action="http://demo.verydows.com/cart/index.html" id="buy-form">

        <dl class="mt15">

          <dt>购买数量:</dt>

          <dd class="qty" id="buy-qty">

            <button type="button">-</button><input name="qty" class="aln-c" type="text" value="1" data-stock="9982"><button type="button">+</button>

            <font class="c999 ml5">件</font>

          </dd>

        </dl>

        </form>

      </div>

      <div class="buy mt30"><a class="add-cart icon" onclick="addToCart(this, '19')">加入购物车</a><a class="buy-now icon" onclick="toBuy('19', 'http://demo.verydows.com/cart/index.html')">立即购买</a></div>

    </div>


javascript部份


//商品内容选项卡切换    $('#contabs li').click(function () {        var i = $(this).index();        $(this).addClass('cur').siblings('.cur').removeClass('cur');        $('.content').eq(i).removeClass('hide').siblings('.content').addClass('hide');    });    $('.speci table tr:even').addClass('even');    $('.speci table tr').vdsRowHover({        hoverClass: 'hover'    });    //改变数量    $('#buy-qty button').click(function () {

//为加减按钮添加点击事件        var $input = $(this).siblings('input'),            qty = parseInt($input.val());        $input.parent().find('font.red').remove();        if ($(this).index() == 0) {

//加减按钮索引为0是第一个,也就是减号            if (qty > 1) $input.val(qty - 1);        } else {            var stock = $input.data('stock');//在数量输入处input设置库存数量            if ($input.val() < stock) {                $input.val(qty + 1);            } else {                exceededStock(stock);//抛出库存异常            }        }    });    //商品可选项选择    $('dd.opt a').click(function () {        $(this).siblings('.cur').removeClass('cur').remove('i');        $(this).addClass('cur').append("<i class=\"icon\"></i>").parent().data('checked', $(this).data('key')).parent()            .removeClass('warning');        var added_price = 0;        var now_price = $('#nowprice').data('price');        $('dd.opt a.cur').each(function (i) {            added_price += +$(this).data('price')        });        now_price = parseFloat(Number(now_price) + Number(added_price)).toFixed(2);        $('#nowprice').text(now_price);    });    //商品数量输入    $('#buy-qty input').keyup(function () {        var qty = $(this).val(),            stock = $(this).data('stock');        if (!/(^[1-9]\d*$)/.test(qty)) {            alert('请输入一个正确格式的购买数量!');            $(this).focus().val(1);            return false;        } else if (qty > stock) {            exceededStock(stock);            $(this).focus().val(stock);        }    });})function exceededStock(stock) {    var container = $('#buy-qty');    container.find('font.warning').remove();    $("<font class='warning red ml10'></font>").text("此商品最多只能购买 " + stock + " 件").appendTo(container);}function addToCart(btn, id) {    var optsGroup = $('.gatt dd.opt'),        key = parseInt(id),        optids = [];    if (optsGroup.length > 0) {        optsGroup.each(function (i, e) {            if (!$(e).data('checked') || $(e).data('checked') == '') {                $(e).parent().addClass('warning');            } else {                optids[i] = $(e).data('checked');                key += '_' + $(e).data('checked');            }        });    }    if ($('.gatt dl.warning').size() > 0) return false; //检查是否有需要选择的商品选项    if ($('#buy-qty font.warning').size() > 0) return false; //检查是否超过库存限制    var dialog = $('#tocart-dialog'),        cart = $.parseJSON(getCookie('CARTS')) || {};    dialog.css({        left: $(btn).offset().left,        top: $(btn).offset().top - dialog.height() - 50    }).show();    if (cart.hasOwnProperty(key)) {        dialog.find('p').addClass('err').find('font').text('购物车中已存在此商品!');        return false;    } else {        cart[key] = {            id: id,            qty: $('#buy-qty input[name="qty"]').val(),            opts: optids        };        setCookie('CARTS', JSON.stringify(cart), 604800);        incrCartNum();        dialog.find('p').find('font').text('加入购物车成功!');    }}function toBuy(id, target) {    var optsGroup = $('.gatt dd.opt'),        key = id,        optids = [],        cart = $.parseJSON(getCookie('CARTS')) || {};    if (optsGroup.length > 0) {        optsGroup.each(function (i, e) {            if (!$(e).data('checked') || $(e).data('checked') == '') {                $(e).parent().addClass('warning');            } else {                optids[i] = $(e).data('checked');                key += '_' + $(e).data('checked');            }        });    }    if ($('.gatt dl.warning').size() == 0) {        if (!cart.hasOwnProperty(key)) {            cart[key] = {                id: id,                qty: $('#buy-qty input[name="qty"]').val(),                opts: optids            };            setCookie('CARTS', JSON.stringify(cart), 604800);        }        window.location.href = target;    }}function cancelTocartDialog() {    $('#tocart-dialog').hide();}


«    2023年7月    »
12
3456789
10111213141516
17181920212223
24252627282930
31
TOP 搜索
TOP 控制面板
您好,欢迎到访网站!
  查看权限
TOP 最新留言
    TOP 作者列表
    TOP 站点信息
    • 文章总数:163
    • 页面总数:0
    • 分类总数:6
    • 标签总数:20
    • 评论总数:0
    • 浏览总数:312004
    召唤伊斯特瓦尔