以下是一個簡單的實現淘寶購物車的示例代碼:
HTML:
<div id="cart">
<h2>購物車</h2>
<ul id="cart-items"></ul>
<button id="checkout-btn">結算</button>
</div>
<div id="product-list">
<h2>商品列表</h2>
<ul>
<li>
<span>商品1</span>
<button class="add-to-cart">加入購物車</button>
</li>
<li>
<span>商品2</span>
<button class="add-to-cart">加入購物車</button>
</li>
<li>
<span>商品3</span>
<button class="add-to-cart">加入購物車</button>
</li>
</ul>
</div>
JavaScript:
// 獲取購物車和商品列表
const cart = document.getElementById('cart-items');
const productList = document.getElementById('product-list');
// 定義購物車數據
let cartItems = [];
// 加入購物車事件處理函數
function addToCart(event) {
const product = event.target.previousElementSibling.textContent;
const item = { name: product };
cartItems.push(item);
renderCart();
}
// 結算事件處理函數
function checkout() {
// 清空購物車
cartItems = [];
renderCart();
alert('結算成功!');
}
// 渲染購物車
function renderCart() {
cart.innerHTML = '';
cartItems.forEach(item => {
const li = document.createElement('li');
li.textContent = item.name;
cart.appendChild(li);
});
}
// 添加加入購物車按鈕點擊事件監聽器
const addToCartButtons = document.querySelectorAll('.add-to-cart');
addToCartButtons.forEach(btn => {
btn.addEventListener('click', addToCart);
});
// 添加結算按鈕點擊事件監聽器
const checkoutBtn = document.getElementById('checkout-btn');
checkoutBtn.addEventListener('click', checkout);
此示例中,通過JavaScript實現了以下功能:
renderCart
函數將購物車數據渲染到頁面中。請注意,此示例只是一個簡單的實現,還有很多細節和功能可以進行優化和擴展。