代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
*{
margin: 0;
padding: 0;
}
body{
overflow-y: auto;
}
ul{
margin-top: 20px;
border-top: 1px solid #666;
}
h1{
width: 500px;
margin: 0 auto;
color: deeppink;
height: 100px;
line-height: 100px;
}
li{
list-style: none;
padding: 15px 0px 15px 60px;
border-bottom:1px solid #ccc;
font-size: 0px;
line-height: 30px;
/*height: 60px;*/
}
input[type=button],li strong,li em,li span,li div{
height: 30px;
font-size: 20px;
line-height: 30px;
text-align: center;
}
input[type=button],li strong
{
width: 60px;
}
li span,li em{
width: 80px;
background: pink;
}
li div{
width: 100px;
}
li strong,li span,li em,li div{
display: inline-block;
}
</style>
<script>
window.onload=function(){
var oUl=document.getElementById('list');
var aLi=oUl.getElementsByTagName('li');
for(var i=0;i<aLi.length;i++){
fn1(aLi[i]);
}
function fn1(aLi){
var aBtn=aLi.getElementsByTagName('input');
var aStrong=aLi.getElementsByTagName('strong')[0];
var aEm=aLi.getElementsByTagName('em')[0];
var aSpan=aLi.getElementsByTagName('span')[0];
var num=Number(aStrong.innerHTML); //aStrong.innerHTML='0'
var price=parseFloat(aEm.innerHTML);//aEm.innerHTML='12.9元'
aBtn[0].onclick=function(){
if(num>0)
{
num--;
aStrong.innerHTML=num;
aSpan.innerHTML=(num*price).toFixed(1)+'元'
}
}
aBtn[1].onclick=function(){
num++;
aStrong.innerHTML=num;
aSpan.innerHTML=(num*price).toFixed(1)+'元'
}
}
}
</script>
</head>
<body>
<h1>点点看,仿购物车+ -效果</h1>
<ul id="list">
<li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>12.9元</em>
<div class="s1">共计:</div><span>0</span>
</li>
<li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>45.7元</em>
<div class="s1">共计:</div><span>0</span>
</li>
<li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>67.5元</em>
<div class="s1">共计:</div><span>0</span>
</li> <li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>14.7元</em>
<div class="s1">共计:</div><span>0</span>
</li>
<li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>45.6元</em>
<div class="s1">共计:</div><span>0</span>
</li>
<li>
<input type="button" value="-" />
<strong>0</strong>
<input type="button" value="+" />
<div class="s1">单价:</div><em>32.4元</em>
<div class="s1">共计:</div><span>0</span>
</li>
</ul>
</body>
</html>

js实现仿购物车加减效果的更多相关文章

  1. js实现购买数量加减效果

    写在前面:当我们需要在多个页面都有操作数量的需求时的一种解决方案 结构: js代码: <script type="text/javascript"> function ...

  2. JQuery案例:购物车加减

    购物车加减 <head> <meta charset="UTF-8"> <title>加减购物车</title> <style ...

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

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

  4. 用js进行日期的加减

    如题,开始查了查js的使用文档,但没发现可以直接用的函数,于是就想自己写函数来着,这就要涉及到每个月天数的判断,如果是2月份的话,还要涉及到闰年的判断,虽然不复杂但我想js应该不会这么低级,于是查了下 ...

  5. Js中处理日期加减天数

    Js的处理日期还是很方便的. 一. 格式化日期为2017-07-04的格式 function formatTime(date) { var year = date.getFullYear(); var ...

  6. js 时间格式,加减

    Date.prototype.Format = function (fmt) { //author: rixiao var o = { "M+": this.getMonth() ...

  7. js 购物车中,多件商品数量加减效果修改,实现总价随数量加减改变

    <!DOCTYPE html> <html> <head> <meta charset=UTF-8 /> <title>无标题文档</ ...

  8. 原生js实现仿window10系统日历效果

    舞动的灵魂版js日历,完全采用js实现,故而实现了与语言无关,jsp.asp.net php asp均可使用.无论你是开发软件,还是网站,均是不可或缺的实用代码. 该日历主要实现了获取当前时间时分秒, ...

  9. spin.js插件的转圈加载效果

    先上插件链接地址:http://fgnass.github.io/spin.js/ 以下是使用spin.js插件的完整版测试例子: <!doctype html> <html> ...

随机推荐

  1. 执行程序(例如UltraEdit)在WIN7下添加到右键菜单

    把下面提供的代码复制到记事本,保存为注册表文件(*.reg),右键合并即可.注意把最后一行换成你自己的路径. Windows Registry Editor Version 5.00 [HKEY_CL ...

  2. [jquery] ajax 调试

    $.ajax({ type: ‘post’, url: url, data: {code: ‘15′}, dataType: ‘jsonp’, sccuess:function(data){ aler ...

  3. BZOJ 1036: [ZJOI2008]树的统计Count-树链剖分(点权)(单点更新、路径节点最值、路径求和)模板,超级认真写了注释啊啊啊

    1036: [ZJOI2008]树的统计Count Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 23015  Solved: 9336[Submit ...

  4. Codeforces 538 C. Tourist's Notes

    C. Tourist's Notes   time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  5. Codeforces Round #352 (Div. 1) B. Robin Hood (二分)

    B. Robin Hood time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  6. Linux命令之find(一)

    find [-H] [-L] [-P] [-Olevel] [-D help| tree| search| stat| rates| opt| exec] [路径] [表达式] find是查找文件的命 ...

  7. (转载)UIKIt力学教程

    转载自:http://www.cocoachina.com/ios/20131226/7614.html 这篇文章还可以在这里找到 英语,   Ray:这篇教程节选自 iOS 7 教程集,它是 iOS ...

  8. 【Trie】bzoj1212 [HNOI2004]L语言

    枚举每个文章里已经在Trie中被标记为可能是分割处的字符,然后再从此处跑Trie,继续向后标记.由于单词数很少,因此复杂度可以接受,O(n*m*Len). #include<cstdio> ...

  9. Intellij IDEA光标保持自动缩进,设置下次不放在行首

  10. mysql-connector-java-6日期存储时差的问题解决方法

    在my.ini文件中的[mysqld]下面加入 default-time_zone = '+8:00' 重启mysql 修改driver连接路径 这样日期保存到mysql就是正确的了,但是mysql- ...