<style> .product-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; } .product-box { width: calc(50% - 20px); border: 1px solid #ccc; padding: 15px; border-radius: 10px; box-sizing: border-box; text-align: center; font-family: Arial, sans-serif; } @media (max-width: 600px) { .product-box { width: 100%; } } .product-box img { width: 100%; border-radius: 10px; } .product-title { font-size: 18px; font-weight: bold; margin: 10px 0; } .product-price { font-size: 16px; color: green; } .qty-controls { display: flex; justify-content: center; align-items: center; margin: 10px 0; } .qty-controls button { font-size: 18px; padding: 5px 10px; } .qty-controls input { width: 50px; text-align: center; font-size: 16px; margin: 0 5px; } .star-rating span { font-size: 20px; cursor: pointer; color: #ccc; } .star-rating .filled { color: #ffcc00; } .buy-now-btn { background-color: #25d366; color: white; border: none; padding: 10px 15px; border-radius: 5px; text-decoration: none; font-size: 16px; display: inline-block; margin-top: 10px; } </style> <div class="product-grid"> <!-- Product 1 --> <div class="product-box" data-id="1"> <img alt="Product 1" src="https://via.placeholder.com/300x200.png?text=Product+1"> <div class="product-title">Product 1</div> <div class="product-price">₹199</div> <div class="star-rating" id="rating-1"> <span onclick="setRating(1, 1)">★</span> <span onclick="setRating(2, 1)">★</span> <span onclick="setRating(3, 1)">★</span> <span onclick="setRating(4, 1)">★</span> <span onclick="setRating(5, 1)">★</span> </div> <div class="qty-controls"> <button onclick="updateQty(-1, 1)">-</button> <input type="number" id="qty-1" value="1" min="1" onchange="updateWhatsAppLink(1)"> <button onclick="updateQty(1, 1)">+</button> </div> <a class="buy-now-btn" href="#" id="buy-link-1" target="_blank">Buy Now</a> </div> <!-- Product 2 --> <div class="product-box" data-id="2"> <img alt="Product 2" src="https://via.placeholder.com/300x200.png?text=Product+2"> <div class="product-title">Product 2</div> <div class="product-price">₹299</div> <div class="star-rating" id="rating-2"> <span onclick="setRating(1, 2)">★</span> <span onclick="setRating(2, 2)">★</span> <span onclick="setRating(3, 2)">★</span> <span onclick="setRating(4, 2)">★</span> <span onclick="setRating(5, 2)">★</span> </div> <div class="qty-controls"> <button onclick="updateQty(-1, 2)">-</button> <input type="number" id="qty-2" value="1" min="1" onchange="updateWhatsAppLink(2)"> <button onclick="updateQty(1, 2)">+</button> </div> <a class="buy-now-btn" href="#" id="buy-link-2" target="_blank">Buy Now</a> </div> <!-- Product 3 --> <div class="product-box" data-id="3"> <img alt="Product 3" src="https://via.placeholder.com/300x200.png?text=Product+3"> <div class="product-title">Product 3</div> <div class="product-price">₹399</div> <div class="star-rating" id="rating-3"> <span onclick="setRating(1, 3)">★</span> <span onclick="setRating(2, 3)">★</span> <span onclick="setRating(3, 3)">★</span> <span onclick="setRating(4, 3)">★</span> <span onclick="setRating(5, 3)">★</span> </div> <div class="qty-controls"> <button onclick="updateQty(-1, 3)">-</button> <input type="number" id="qty-3" value="1" min="1" onchange="updateWhatsAppLink(3)"> <button onclick="updateQty(1, 3)">+</button> </div> <a class="buy-now-btn" href="#" id="buy-link-3" target="_blank">Buy Now</a> </div> <!-- Product 4 --> <div class="product-box" data-id="4"> <img alt="Product 4" src="https://via.placeholder.com/300x200.png?text=Product+4"> <div class="product-title">Product 4</div> <div class="product-price">₹499</div> <div class="star-rating" id="rating-4"> <span onclick="setRating(1, 4)">★</span> <span onclick="setRating(2, 4)">★</span> <span onclick="setRating(3, 4)">★</span> <span onclick="setRating(4, 4)">★</span> <span onclick="setRating(5, 4)">★</span> </div> <div class="qty-controls"> <button onclick="updateQty(-1, 4)">-</button> <input type="number" id="qty-4" value="1" min="1" onchange="updateWhatsAppLink(4)"> <button onclick="updateQty(1, 4)">+</button> </div> <a class="buy-now-btn" href="#" id="buy-link-4" target="_blank">Buy Now</a> </div> </div> <script> let ratings = {}; function updateQty(change, id) { let input = document.getElementById(`qty-${id}`); let qty = parseInt(input.value) || 1; qty += change; if (qty < 1) qty = 1; input.value = qty; updateWhatsAppLink(id); } function setRating(rating, id) { ratings[id] = rating; let stars = document.querySelectorAll(`#rating-${id} span`); stars.forEach((star, i) => { if (i < rating) star.classList.add("filled"); else star.classList.remove("filled"); }); updateWhatsAppLink(id); } function updateWhatsAppLink(id) { let box = document.querySelector(`.product-box[data-id="${id}"]`); let name = box.querySelector(".product-title").innerText; let price = box.querySelector(".product-price").innerText; let qty = document.getElementById(`qty-${id}`).value; let rating = ratings[id] || "No rating"; let msg = `Hello! I'm interested in:\nProduct: ${name}\nPrice: ${price}\nQuantity: ${qty}\nRating: ${rating} star(s)`; let encoded = encodeURIComponent(msg); let phone = "918507862021"; document.getElementById(`buy-link-${id}`).href = `https://wa.me/${phone}?text=${encoded}`; } for (let i = 1; i <= 4; i++) { updateWhatsAppLink(i); } </script>
No comments:
Post a Comment