hello_my_world

博客园 首页 新随笔 联系 订阅 管理

分别用JavaScript,jQuery和vue做了一个简单的购物车加减按钮部分。

HTML:

<ul class="counter">
 <li id="minus"><input type="button" onclick="minuser()" value="-"/></li>
 <li id="countnum">0</li>
 <li id="plus"><input type="button" onclick="adder()" value="+"/></li>
</ul>

css(主要是去除按钮默认样式,赋予新样式):

ul,li{margin:0; padding:0; }
.counter li{float:left; list-style-type:none; width:30px; height:30px; text-align:center; line-height:30px; border:#999 thin solid; background-color:#fff}
.counter li input{font-size:20px; width:100%; height:100%; outline:none; -webkit-appearance:none; background:none; margin:0; padding:0; border: 1px solid transparent; border-radius: 0;}
#countnum{ border-left:hidden; border-right:hidden; color:#666}

JavaScript:

function adder(){
    var count=document.getElementById("countnum").innerHTML;
    count=parseInt(count)+1;
    document.getElementById("countnum").innerHTML=count;
}
function minuser(){
    var count=document.getElementById("countnum").innerHTML;
    if(count<=0){
        count=0;
    }else{
        count=parseInt(count)-1;
    }    
    document.getElementById("countnum").innerHTML=count;
}

jQuery:

function adder(){
    var count=$("#countnum").text();
    count=parseInt(count)+1;
    $("#countnum").text(count);
}
function minuser(){
    var count=$("#countnum").text();
    if(count<=0){
        count=0;
    }else{
        count=parseInt(count)-1;
    }    
    $("#countnum").text(count);
}

 vue版

HTML:

<p>vue版</p>
<ul class="counter">
 <li id="minus"><input type="button" v-on:click="minuser" value="-"/></li>
 <li id="countnum" >{{ count }}</li>
 <li id="plus"><input type="button" v-on:click="adder" value="+"/></li>
</ul>

vue:

new Vue({
     el: '.counter',
  data: {
    count:0
  },
  methods: {
   adder: function () {
      this.count++;
    },
   minuser: function (event) {
     if(this.count<=0){
         this.count=0;
     }else{
         this.count--;
     }
    }
  }
});

 

posted on 2019-01-15 22:23  hello_my_world  阅读(459)  评论(0编辑  收藏  举报