js简易版购物车功能
发布时间 - 2026-01-11 01:55:28 点击率:次本文实例为大家分享了js购物车功能的具体代码,供大家参考,具体内容如下
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
* {
margin: 0;
padding: 0;
}
li {
list-style: none;
}
li {
float: left;
width: 200px;
border: 1px #000 solid;
margin: 10px;
}
li img {
width: 200px;
}
p {
height: 20px;
border-bottom: 1px #333 dashed;
}
#bus {
width: 600px;
border: 1px #000 solid;
height: 300px;
clear: both;
}
.box1 {
float: left;
width: 200px;
}
.box2 {
float: left;
width: 200px;
}
.box3 {
float: left;
width: 200px;
}
#allMoney {
float: right;
}
</style>
<script>
window.onload = function() {
var oList = document.getElementById('list');
var aLi = oList.getElementsByTagName('li');
var oBus = document.getElementById('bus');
var obj = {};
var iNum = 0;
var allMoney = 0;
for (var i = 0; i < aLi.length; i++) {
aLi[i].ondragstart = function(ev) {
//点击拖拽元素的时候,就设置数据,以后放到购物车的时候数据就可以传过去了
var ev = ev || window.event;
var aP = this.getElementsByTagName('p');
ev.dataTransfer.setData('title', aP[0].innerHTML);
ev.dataTransfer.setData('price', aP[1].innerHTML);
ev.dataTransfer.setDragImage(this, 0, 0);
}
}
oBus.ondragover = function(ev) {
//阻止鼠标默认事件
var ev = ev || event;
ev.preventDefault();
};
oBus.ondrop = function(ev) {
var ev = ev || event;
var title = ev.dataTransfer.getData('title');
var price = ev.dataTransfer.getData('price');
if(!obj[title]){
var oP = document.createElement('p');
var oSpan = document.createElement('span');
oSpan.className = 'box1';
oSpan.innerHTML = 1;
oP.appendChild(oSpan);
var oSpan = document.createElement('span');
oSpan.className = 'box2';
oSpan.innerHTML = title;
oP.appendChild(oSpan);
var oSpan = document.createElement('span');
oSpan.className = 'box3';
oSpan.innerHTML = price;
oP.appendChild(oSpan);
oBus.appendChild(oP);
obj[title] = 1;
}else{
var box1 = document.getElementsByClassName('box1');
var box2 = document.getElementsByClassName('box2');
for(var i=0;i<box2.length;i++){
if(box2[i].innerHTML == title){
box1[i].innerHTML = parseInt(box1[i].innerHTML) + 1;
};
};
};
//总价
if(!allMoney){
allMoney = document.createElement('div');
allMoney.id = 'allMoney';
}
iNum += parseInt(price);
allMoney.innerHTML = '¥'+iNum;
oBus.appendChild(allMoney);
};
};
</script>
</head>
<body>
<ul id="list">
<li draggable="true">
<img src="img/img1.jpg" />
<p>javascript语言精粹</p>
<p>40¥</p>
</li>
<li draggable="true">
<img src="img/img2.jpg" />
<p>javascript权威指南</p>
<p>120¥</p>
</li>
<li draggable="true">
<img src="img/img3.jpg" />
<p>精通javascript</p>
<p>35¥</p>
</li>
<li draggable="true">
<img src="img/img4.jpg" />
<p>DOM编程艺术</p>
<p>45¥</p>
</ul>
<div id="bus"></div>
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 购物车
# js购物车实现思路及代码(个人感觉不错)
# Javascript操纵Cookie实现购物车程序
# 简单的前端js+ajax 购物车框架(入门篇)
# js实现简单的购物车有图有代码
# 原生js模拟淘宝购物车项目实战
# JavaScript编写一个简易购物车功能
# 基于Vuejs实现购物车功能
# 利用Angularjs和bootstrap实现购物车功能
# js+cookies实现悬浮购物车的方法
# 鼠标
# 大家分享
# 具体内容
# 大家多多
# 就可以
# 拖拽
# height
# img
# bottom
# border
# px
# solid
# window
# script
# allMoney
# bus
# dashed
# clear
# width
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
英语简历制作免费网站推荐,如何将简历翻译成英文?
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解
如何续费美橙建站之星域名及服务?
网站制作报价单模板图片,小松挖机官方网站报价?
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
Laravel集合Collection怎么用_Laravel集合常用函数详解
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
Python制作简易注册登录系统
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】
高端网站建设与定制开发一站式解决方案 中企动力
如何在万网自助建站中设置域名及备案?
jQuery 常见小例汇总
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
Laravel如何实现用户密码重置功能?(完整流程代码)
JS实现鼠标移上去显示图片或微信二维码
JavaScript如何实现路由_前端路由原理是什么
如何快速登录WAP自助建站平台?
Laravel如何自定义分页视图?(Pagination示例)
如何在IIS中新建站点并配置端口与物理路径?
潮流网站制作头像软件下载,适合母子的网名有哪些?
Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理
香港服务器网站卡顿?如何解决网络延迟与负载问题?
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
JavaScript常见的五种数组去重的方式
Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】
phpredis提高消息队列的实时性方法(推荐)
如何在阿里云部署织梦网站?
如何快速建站并高效导出源代码?
如何快速搭建高效WAP手机网站吸引移动用户?
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
Python3.6正式版新特性预览
HTML 中动态设置元素 name 属性的正确语法详解
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
Laravel如何处理和验证JSON类型的数据库字段
Android中AutoCompleteTextView自动提示
如何在云服务器上快速搭建个人网站?

