HTML、CSS和JavaScript打造的折扣計算器
本文將逐步說明一個使用HTML、CSS和JavaScript建構的折扣計算器。我們將逐段分解程式碼,解釋每個部分的工作原理。此外,還將提供如何自行測試此計算器的說明,並提出一些程式碼改進建議。
[此處測試程式碼](Test the Code)
計算器功能
此計算器旨在幫助用戶計算應用折扣、稅金和任何額外費用後的商品最終價格。它接受原始價格、數量、折扣百分比、稅率百分比和額外費用的輸入。然後,它根據這些輸入計算總成本。
HTML結構
以下是HTML程式碼的基本架構:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>高级折扣计算器</title> <link rel="stylesheet" href="style.css"> </head> <body class="discount-body"> <h1 id="高级折扣计算器">高级折扣计算器</h1> <div class="container discount-container"> </div> <div id="discount-result"></div> <script src="script.js"></script> </body> </html>
說明:
-
DOCTYPE和HTML標籤:
聲明定義了文件類型,在本例中為HTML5。 <code>
標籤包含所有HTML內容。 -
頭部部分: 在
標籤內,我們有元標記用於設定字元集和視口以實現響應式設計。
<title></title>
標籤定義了瀏覽器標籤中顯示的頁面標題。 -
主體部分: 頁面的主體包含使用者將與之互動的實際內容。在這裡,我們使用
<h1></h1>
標籤作為主標題,並使用<div>作為包含表單元素的容器。 <hr> <p><strong>CSS樣式</strong></p> <p>現在,讓我們討論一下為計算器設定樣式的CSS:</p> <pre class='brush:php;toolbar:false;'>body.discount-body { font-family: 'Arial', sans-serif; margin: 0; padding: 20px; background-color: #f3f4f6; color: #333; box-sizing: border-box; }</pre> <p><strong>細分:</strong></p> <ul> <li> <code>body.discount-body
: 我們為主體套用通用樣式,例如將字體系列設定為Arial,在內容周圍添加填充,並設定淺色背景顏色。box-sizing: border-box;
確保填充和邊框包含在元素的總寬度和高度。 -
h1.discount-heading
: 標題居中,顏色為綠色(#28a745),底部有邊距,字體大小為24px。 -
.container.discount-container
: 此部分設定所有表單輸入和按鈕所在的容器的樣式。它的最大寬度為500px,使用margin: 0 auto;
水平居中,並帶有綠色邊框。box-shadow
在容器周圍創造微妙的陰影,使其具有深度。 -
元素選擇: 我們使用
document.getElementById()
從表單輸入擷取值。 - 驗證: 我們檢查輸入值是否為有效數字。如果任何值無效,我們會向使用者顯示警報。
- 計算: 總價格是將原始價格乘以數量來計算。然後我們應用折扣,計算稅款,並添加任何額外費用。
-
顯示結果: 結果顯示在id為
discount-result
的div中。我們使用.innerHTML
動態更新內容,並使用.style.display = 'block'
顯示結果。 - 非負數驗證: 確保使用者不能為價格、數量或費用輸入負數。
- 可選稅費: 可以透過設定預設值或新增更複雜的輸入處理來使稅費和額外費用欄位可選。
- 使用者回饋: 對於無效輸入,請考慮在頁面本身顯示訊息,這不會那麼具有侵入性。
h1.discount-heading { text-align: center; color: #28a745; margin-bottom: 15px; font-size: 24px; }
.container.discount-container { max-width: 500px; margin: 0 auto; background-color: #ffffff; padding: 20px; border-radius: 10px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); border: 2px solid #28a745; }
JavaScript功能
計算器的主要功能由JavaScript處理。以下是calculateDiscount
函數:
function calculateDiscount() { // ... (代码与原文相同) ... }
細分:
改進建議
程式碼運作良好,但總是有改進的空間。以下是一些建議:
分享您的想法
您認為還可以對這段程式碼進行哪些改進?請在下面的評論中留下您的建議,讓我們一起改進這個計算器!
[此處測試程式碼](Test the Code)
以上是輕鬆計算折扣:稅金、費用和折扣百分比說明的詳細內容。更多資訊請關注PHP中文網其他相關文章!

C 和JavaScript通過WebAssembly實現互操作性。 1)C 代碼編譯成WebAssembly模塊,引入到JavaScript環境中,增強計算能力。 2)在遊戲開發中,C 處理物理引擎和圖形渲染,JavaScript負責遊戲邏輯和用戶界面。

JavaScript在網站、移動應用、桌面應用和服務器端編程中均有廣泛應用。 1)在網站開發中,JavaScript與HTML、CSS一起操作DOM,實現動態效果,並支持如jQuery、React等框架。 2)通過ReactNative和Ionic,JavaScript用於開發跨平台移動應用。 3)Electron框架使JavaScript能構建桌面應用。 4)Node.js讓JavaScript在服務器端運行,支持高並發請求。

Python更適合數據科學和自動化,JavaScript更適合前端和全棧開發。 1.Python在數據科學和機器學習中表現出色,使用NumPy、Pandas等庫進行數據處理和建模。 2.Python在自動化和腳本編寫方面簡潔高效。 3.JavaScript在前端開發中不可或缺,用於構建動態網頁和單頁面應用。 4.JavaScript通過Node.js在後端開發中發揮作用,支持全棧開發。

C和C 在JavaScript引擎中扮演了至关重要的角色,主要用于实现解释器和JIT编译器。1)C 用于解析JavaScript源码并生成抽象语法树。2)C 负责生成和执行字节码。3)C 实现JIT编译器,在运行时优化和编译热点代码,显著提高JavaScript的执行效率。

JavaScript在現實世界中的應用包括前端和後端開發。 1)通過構建TODO列表應用展示前端應用,涉及DOM操作和事件處理。 2)通過Node.js和Express構建RESTfulAPI展示後端應用。

JavaScript在Web開發中的主要用途包括客戶端交互、表單驗證和異步通信。 1)通過DOM操作實現動態內容更新和用戶交互;2)在用戶提交數據前進行客戶端驗證,提高用戶體驗;3)通過AJAX技術實現與服務器的無刷新通信。

理解JavaScript引擎內部工作原理對開發者重要,因為它能幫助編寫更高效的代碼並理解性能瓶頸和優化策略。 1)引擎的工作流程包括解析、編譯和執行三個階段;2)執行過程中,引擎會進行動態優化,如內聯緩存和隱藏類;3)最佳實踐包括避免全局變量、優化循環、使用const和let,以及避免過度使用閉包。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

Atom編輯器mac版下載
最受歡迎的的開源編輯器

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。