效果展示:

HTML:

            <!-- 3、咨询分钟 -->
            <div class="buymain_body_son">
                <div class="buymain_body_son_left">咨询分钟</div>
                <div class="buymain_body_son_right">
                    <div id="cuttime" class="buymain_body_btn">-</div>
                    <div id="mtime" class="buymain_body_num">50</div>
                    <div id="addtime" class="buymain_body_btn">+</div>
                </div>
            </div>
            <!-- 4、咨询次数 -->
            <div class="buymain_body_son">
                <div class="buymain_body_son_left">咨询次数</div>
                <div class="buymain_body_son_right">
                    <div id="cutnum" class="buymain_body_btn">-</div>
                    <div id="mnum" class="buymain_body_num">1</div>
                    <div id="addnum" class="buymain_body_btn">+</div>
                </div>
            </div>
 
CSS:
.buymain_body_son {
    display: flex;
    flex-direction: row;
    margin-top: 4vw;
}
.buymain_body_son_left {
    display: flex;
    font-size: 14px;
    letter-spacing: 1px;
    text-shadow: 0 0 0 #777;
    align-items: center;
}
.buymain_body_son_right {
    display: flex;
    flex-direction: row;
    flex: 1;
    justify-content: flex-end;
    align-items: center;
}
.buymain_body_btn {
    font-size: 14px;
    background-color: #f5f5f5;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1vw;
    padding: 0 2vw;
    border-radius: 4px;
}
.buymain_body_num {
    font-size: 14px;
    background-color: #f5f5f5;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1vw;
    padding: 0vw 2vw;
    border-radius: 4px;
}
 
JS:
// 咨询分钟的加减,假设最少20分钟,最高60分钟
    var buytime = 50;  // 初始值
    $("#mtime").html(buytime);
    $("#thisnewtime").html(buytime);
    $("#addtime").click(function(){
        if (buytime==60) return;   // 等于60的时候不能加
        buytime ++;
        $("#mtime").html(buytime);
        $("#thisnewtime").html(buytime);
        $("#cuttime").css("color","#000");
        if(buytime==60){  // 等于60的时候加号变浅
            $("#addtime").css("color","#999");
        }
    })
    $("#cuttime").click(function(){
        if (buytime==20) return;   // 等于20的时候不能减
        buytime --;
        $("#mtime").html(buytime);
        $("#thisnewtime").html(buytime);
        $("#addtime").css("color","#000");
        if(buytime==20){  // 等于20的时候减号变浅
            $("#cuttime").css("color","#999");
        }
    })
    // 价格变化
    var price1 = 300;  // 初始单价
    var price2 = '小计&nbsp;&nbsp;¥'+price1;
    var price3 = '总计¥'+price1;
    $("#priceno1").html(price1);
    $("#priceno2").html(price2);
    $("#priceno3").html(price3);
    // 咨询次数的加减,假设最少1,最多不限制(假设99)
    var buynum = 1;  // 初始值
    $("#cutnum").css("color","#999");
    $("#mnum").html(buynum);
    $("#thisnewnum").html(buynum);
    $("#addnum").click(function(){
        if (buynum==99) return;   // 等于99的时候不能加
        buynum ++;
        var newprice1 = price1*buynum;  // 刷新价格
        var newprice2 = '小计&nbsp;&nbsp;¥'+newprice1;  // 刷新价格
        var newprice3 ='总计¥'+newprice1;  // 刷新价格
        $("#mnum").html(buynum);
        $("#thisnewnum").html(buynum);
        $("#priceno1").html(newprice1);
        $("#priceno2").html(newprice2);
        $("#priceno3").html(newprice3);
        $("#cutnum").css("color","#000");
        if(buynum==99){  // 等于99的时候加号变浅
            $("#addnum").css("color","#999");
        }
    })
    $("#cutnum").click(function(){
        if (buynum==1) return;   // 等于1的时候不能减
        buynum --;
        var newprice1 = price1*buynum;  // 刷新价格
        var newprice2 = '小计&nbsp;&nbsp;¥'+newprice1;  // 刷新价格
        var newprice3 ='总计¥'+newprice1;  // 刷新价格
        $("#mnum").html(buynum);
        $("#thisnewnum").html(buynum);
        $("#priceno1").html(newprice1);
        $("#priceno2").html(newprice2);
        $("#priceno3").html(newprice3);
        $("#addnum").css("color","#000");
        if(buynum==1){  // 等于1的时候减号变浅
            $("#cutnum").css("color","#999");
        }
    })
 
最后效果大概就是这样:

jq实现加减功能的更多相关文章

  1. jQuery实现购物车物品数量的加减

    基于jquery的一款代码,实现购物车数据的加减,在淘宝网.京东商城购物时时经常见到的一个功能,点击文本框两侧的“+”与“-”,就可以增加或减少文本框内的数字值,每次步长为1,当然这个是可以自己设置的 ...

  2. Axure 实现数字自动加键功能(点击“+”数字加1,点击“-”数字减1)

    百度网盘:http://pan.baidu.com/s/1gfPQ9V1 在上面的元件库中,拖“数字框(仅正数)”即可实现自动加减的功能 如图:

  3. 【python】详解time模块功能asctime、localtime、mktime、sleep、strptime、strftime、time等函数以及时间的加减运算

    在Python中,与时间处理相关的模块有:time.datetime以及calendar.学会计算时间,对程序的调优非常重要,可以在程序中狂打时间戳,来具体判断程序中哪一块耗时最多,从而找到程序调优的 ...

  4. vue 入门 ------简单购物车功能实现(全选,数量加减,价格加减)

    简易购物车功能(无任何布局 主要是功能) 数量的加减 商品的总价钱 全选与全不选 删除(全选.价格 受影响) <script src="https://cdn.jsdelivr.net ...

  5. Jquery实现购物车物品数量的加减特效

    今天网友翠儿在用Jquery实现购物车物品数量的加减特效的时候遇到问题来问我,我后来帮她解决了这个Jquery特效,现在把它整理出来分享给大家用,虽然功能比较简单,但是很实用. 主要包括了以下功能: ...

  6. jQuery数字加减插件

    jQuery数字加减插件 我们在网上购物提交订单时,在网页上一般会有一个选择数量的控件,要求买家选择购买商品的件数,开发者会把该控件做成可以通过点击实现加减等微调操作,当然也可以直接输入数字件数.本文 ...

  7. Android带加减的edittext

    看了网上这样自带加减的edittext写得好复杂,还有各种监听事件,我觉得没有必有.于是我自己写了一个. 我这个edittext仅仅限制整数,每次加减1. public class TestEditT ...

  8. js实现输入框数量加减【转】

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 自己动手丰衣足食之 jQuery 数量加减插件

    引言 做一个手机端的订单相关项目中,其中下订单时需要用到数量加减的控件,可以设置默认值,也可以设置最大值和最小值.使用jQuery这么长时间了,平时很少去编写属于自己的插件,现在编写的时候对立面的一些 ...

随机推荐

  1. Maven常用设置

    1,maven属性设置 <properties>设置maven的常用属性 <properties> 属性设置 <!--maven构建项目使用编码,避免中文乱码--> ...

  2. java基础编程练习题

    1.題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1 2 3 4 5 6 7 1 1 2 3 ...

  3. C++数据结构类型以及实现类

    1.array数组 #include<iostream> #include<array> using namespace std; int main() { array< ...

  4. python数据操作--8

    转:https://www.tuicool.com/wx/MB7nieb 数据类型 整数, 浮点数, 字符串, 布林值(True,False) 列表(list), 不可变的列表 Tuple, 集合(没 ...

  5. springboot 使用select的注解,来查询数据库。

    package com.aaa.zxf.mapper; import com.aaa.zxf.model.Book; import org.apache.ibatis.annotations.*; i ...

  6. go 把固定长度的数字写入字节切片 (byte slice),然后从字节切片中读取到并赋值给一个变量:

    // write v := uint32(500) buf := make([]byte, 4) binary.BigEndian.PutUint32(buf, v) // read x := bin ...

  7. Spring @Cacheable 缓存不生效的问题

    最近在项目中使用了Ehcache缓存,使用方式是用Spring提供的 @Cacheable 注解的方式,这种方式简单.快速.方便,推荐使用. 在使用的过程中,遇到了缓存不生效的情况,经过分析处理,总结 ...

  8. github中,一些涉及到用户配置的文件怎么处理(比如数据库用户名/密码)?

    感谢问题回答者:Livid 问题地址:https://www.v2ex.com/t/74245 加密方式参考:http://www.manongjc.com/detail/12-bmntimjowei ...

  9. windows平台编码转换

    int AsciiToUtf8(char* pSrc, unsigned int nSrcLen, char* pBuffer, unsigned int nBufferLen) { assert(p ...

  10. JVM学习七-(复习)垃圾收集策略与算法

    垃圾收集策略与算法 程序计数器.虚拟机栈.本地方法栈随线程而生,也随线程而灭:栈帧随着方法的开始而入栈,随着方法的结束而出栈.这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的 ...