var cartList = JSON.parse(window.localStorage.getItem('cartList')) || [
{
id: 111234,
status: false,
pic: "https://img1.baidu.com/it/u=2511310783,721605137&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=332",
name: "我是一个手机, 不知道是啥",
price: 100,
number: 3,
total: 5,
},
{
id: 123456,
status: false,
pic: "https://img1.baidu.com/it/u=1537709578,2453227648&fm=253&fmt=auto&app=120&f=JPEG?w=809&h=500",
name: "我是一个电脑, 不知道是啥",
price: 98.72,
number: 1,
total: 7,
},
{
id: 965874,
status: true,
pic: "https://img2.baidu.com/it/u=3561506717,735421650&fm=253&fmt=auto&app=138&f=JPEG?w=750&h=500",
name: "我是一个手纸, 不知道是啥",
price: 356.21,
number: 2,
total: 22,
},
];
var oCon = document.querySelector('.content')
function bindHtml(){
var selectCke = 0
var amountCke = 0
var sumCke = 0
cartList.forEach(function(item){
if(item.status === true){
selectCke++
amountCke+=item.number
sumCke+=item.number*item.price
}
})
var str = ''
str+=`
<div class="top">
<input type="checkbox" class="quan" ${selectCke === cartList.length?'checked':''}> 全选
</div>
<ul>
`
cartList.forEach(function(item){
str+=`
<li>
<div class="status">
<input type="checkbox" class="ge" data-id="${item.id}" ${item.status?'checked':''}>
</div>
<div class="show">
<img src=${item.pic} alt="">
</div>
<div class="title">
${item.name}
</div>
<div class="price">
¥ ${item.price.toFixed(2)}
</div>
<div class="number">
<button class="buttjian" data-id=${item.id}>-</button>
<input type="text" value="${item.number}">
<button class="buttjia" data-id=${item.id}>+</button>
</div>
<div class="sub">
<!-- 总价 -->
¥ ${item.number * item.price}
</div>
<div class="destory">
<button class="shanc" data-id="${item.id}" >删除</button>
</div>
</li>
`
})
str+=`
</ul>
<div class="bottom">
<div class="totalNum">
总件数 : ${amountCke}
</div>
<div class="btns">
<button class="qk">清空购物车</button>
<button class ="jsuan" data-totalPrice = "${sumCke.toFixed(2)}">去结算</button>
<button class="yixuan">删除所有已选中</button>
</div>
<div class="totalPrice">
总价格 : ¥ <span>${sumCke.toFixed(2)}</span>
</div>
</div>
`
oCon.innerHTML = str
window.localStorage.setItem("cartList",JSON.stringify(cartList))
return
}
bindHtml()
oCon.addEventListener('click',function(e){
if(e.target.className === 'quan'){
cartList.forEach(function(item){
item.status = e.target.checked
bindHtml()
})
}
if(e.target.className ==='qk'){
var boo = confirm('请问你确定清空吗')
if(boo){
cartList.length = 0
bindHtml()
}
}
if(e.target.className === 'jsuan'){
console.log(e.target.dataset.totalprice)
}
if(e.target.className === 'shanc'){
console.log(1)
cartList = cartList.filter(function(item){
return item.id != e.target.dataset.id
})
bindHtml()
}
if(e.target.className === 'yixuan'){
console.log(1)
cartList = cartList.filter(function(item){
return item.status === false
})
bindHtml()
}
if(e.target.className === 'ge'){
cartList.forEach(function(item){
if(item.id == e.target.dataset.id){
item.status = !item.status
console.log(1)
bindHtml()
}
})
}
if(e.target.className === 'buttjian'){
cartList.forEach(function(item){
if(item.id == e.target.dataset.id && item.number>1){
item.number--
console.log(1)
bindHtml()
}
})
}
if(e.target.className === 'buttjia'){
cartList.forEach(function(item){
if(item.id == e.target.dataset.id && item.number<item.total){
item.number++
console.log(1)
bindHtml()
}
})
}
})