addevent侦听器 购物车不起作用
addeventlistener Shopping Cart does not work
我会保持简单,在我的jsfiddle中,我有一个使用javascript的购物车。我想要的是有人点击按钮,它会将商品添加到购物车中。不幸的是,该函数不会调用AdditemtoCart,除非它在让我发疯的函数之外。让我知道我做错了什么。
JSFIDDLE 链接 : https://jsfiddle.net/w2z3rb9h/51/
<div id="cart" class="glyphicon glyphicon-shopping-cart">
<div id="money">
$</div>
<div id="length">
Items
</div>
</div>
<button name="button" id="addItem">
Add Item
</button>
HTML Code above
// [(START)Cart]-------->
var cart = [];
// [(END)Cart]---------->
// [(START)Factory]-------->
var Item = function(name, price, count) {
this.name = name;
this.price = price;
this.count = count;
};
// [(END)Cart]-------------->
// [(START)Adding Items to Cart]-------->
function addItemToCart(name, price, count){
for (var key in cart) {
if (cart[key].name === name) {
cart[key].count += count;
cart[key].price += price;
return;
}
}
var item = new Item(name, price, count);
cart.push(item);
}
// [(END)Adding Items to Cart]---------->
// [(START)Remove Item From Cart]-------->
function removeItemFromCart(name,price) {
for(var key in cart) {
if(cart[key].name === name) {
cart[key].count --;
cart[key].price -= price;
if(cart[key].count === 0) {
cart.splice(key,1);
}
break;
}
}
}
// [(END)Remove Item From Cart]-------->
// [(START)Remove All Item From Cart]-->
function removeItemFromCartAll(name){
for (var key in cart){
if(cart[key].name === name){
cart.splice(key, 1);
break;
}
}
}
// [(END)Remove All Item From Cart]---->
function call() {
addItemToCart("Apple", 1.2, 1);
alert("It works");
}
document.getElementById("addItem").addEventListener("mousedown", call);
// [(START)Get Cart Amount] ----------->
function cartlength() {
var x = 0;
for (var key in cart) {
x += cart[key].count;
}
document.getElementById("length").innerHTML = "Items:" + x;
}
//Invoked:Get Cart Amount
cartlength();
// [(END)Get Cart Amount] ----------->
// [(START)Price] ------------------->
function cartprice() {
var y = 0;
for (var key in cart) {
y += cart[key].price;
}
document.getElementById("money").innerHTML = "$" + y;
}
//Invoke: Price
cartprice();
// [(END)Price] --------------------->
当您单击addItem
按钮时,它会调用call
函数,并且在addItemToCart
和alert
内部也被调用。您可以测试它,在addItemToCart
内添加警报。项目现在位于数组cart
内。你需要更新cart
div,调用cartlength
和cartprice
函数。以这种方式更新call
方法:
function call() {
addItemToCart("Apple", 1.2, 1);
cartlength();
cartprice();
alert("It works");
}
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- 简单的javascript在Shopify中不起作用
- Recaptcha在IE7和IE8中不起作用
- Ember Data DS.Model's set函数不起作用
- JsFiddle上的鼠标事件不起作用
- 我的AngularJS表达式没有'不起作用
- 点击按钮输入不起作用
- 面向对象的Javascript代码在IE7中不起作用
- 分部隐藏在jquery中不起作用
- 在phonegap应用程序内部重定向不起作用
- Array.length似乎不起作用;console.log则显示其他情况
- $ionicplatform内的$scope不;不起作用
- 从购物车中删除在AngularJS中不起作用
- addevent侦听器 购物车不起作用
- 购物 添加到购物车 按钮不起作用
- “添加到购物车”按钮不起作用 美德市场 2 - Joomla 2.5
- 马根托.添加到购物车在Internet Explorer中不起作用
- analystics.js增强的电子商务添加到购物车不起作用