SimplySoundAdvice.com: What is your Body Mass Index (BMI)?
About this app
Calculate your Body Mass Index (BMI) using the SimplySoundAdvice.com BMI Calculator.
SimplySoundAdvice.com: What is your Body Mass Index (BMI)? SimplySoundAdvice.com: What is your Body Mass Index (BMI)? Select Unit of Measurement: Metric Imperial Height: Weight: Underweight Normal Weight Overweight Obese BMI is a useful measure for adults. It may not be accurate for athletes, elderly, or children. Calculate Again
Related apps
Put this on your site
Source
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>SimplySoundAdvice.com: What is your Body Mass Index (BMI)?</title>
<meta name="description" content="Calculate your Body Mass Index (BMI) using the SimplySoundAdvice.com BMI Calculator.">
<meta name="keywords" content="BMI calculator, body mass index calculator, weight calculator, height calculator">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.
// This will run when the DOM is ready.
document.addEventListener("DOMContentLoaded", function() {
// Store height and weight values
var height = 0;
var weight = 0;
// Store BMI result
var bmi = 0;
// Store selected unit of measurement
var unit = "";
// Initialize user interface elements
var heightInput = document.getElementById("heightInput");
var weightInput = document.getElementById("weightInput");
var unitSelect = document.getElementById("unitSelect");
var bmiResult = document.getElementById("bmiResult");
var bmiInterpretation = document.getElementById("bmiInterpretation");
// Add event listeners
heightInput.addEventListener("input", calculateBMI);
weightInput.addEventListener("input", calculateBMI);
unitSelect.addEventListener("change", setUnit);
// Function to calculate BMI
function calculateBMI() {
// Get height and weight values
height = parseFloat(heightInput.value);
weight = parseFloat(weightInput.value);
// Check if height and weight are valid numbers
if (!isNaN(height) && !isNaN(weight)) {
// Calculate BMI based on selected unit
if (unit === "metric") {
bmi = weight / ((height / 100) * (height / 100));
} else if (unit === "imperial") {
bmi = (weight / (height * height)) * 703;
}
// Display BMI result
bmiResult.textContent = bmi.toFixed(2);
// Set color based on BMI range
if (bmi < 18.5) {
bmiResult.style.color = "blue";
bmiInterpretation.textContent = "Underweight";
} else if (bmi >= 18.5 && bmi <= 24.9) {
bmiResult.style.color = "green";
bmiInterpretation.textContent = "Normal Weight";
} else if (bmi >= 25 && bmi <= 29.9) {
bmiResult.style.color = "orange";
bmiInterpretation.textContent = "Overweight";
} else {
bmiResult.style.color = "red";
bmiInterpretation.textContent = "Obese";
}
} else {
// Reset BMI result if height or weight is invalid
bmiResult.textContent = "";
bmiInterpretation.textContent = "";
}
}
// Function to set selected unit
function setUnit() {
unit = unitSelect.value;
// Reset BMI result when unit is changed
bmiResult.textContent = "";
bmiInterpretation.textContent = "";
heightInput.value = "";
weightInput.value = "";
// Update input placeholders based on unit
if (unit === "metric") {
heightInput.placeholder = "Height (cm)";
weightInput.placeholder = "Weight (kg)";
} else if (unit === "imperial") {
heightInput.placeholder = "Height (ft)";
weightInput.placeholder = "Weight (lbs)";
}
}
});
} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>
<style>
/* App CSS Goes Here */
body {
font-family: 'Roboto', sans-serif;
}
.container {
max-width: 500px;
margin: 0 auto;
padding: 20px;
}
h1 {
text-align: center;
margin-bottom: 40px;
}
.form-group {
margin-bottom: 20px;
}
.bmi-result {
font-size: 36px;
text-align: center;
margin-bottom: 20px;
}
.bmi-interpretation {
text-align: center;
margin-bottom: 40px;
}
.legend {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 40px;
}
.legend-item {
display: flex;
align-items: center;
margin-right: 20px;
}
.legend-item span {
margin-left: 10px;
}
.note {
text-align: center;
margin-bottom: 40px;
}
.button-container {
display: flex;
justify-content: center;
}
.restart-button {
padding: 10px 20px;
background-color: #007bff;
color: white;
border: none;
border-radius: 5px;
font-size: 16px;
cursor: pointer;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>SimplySoundAdvice.com: What is your Body Mass Index (BMI)?</h1>
<div class="form-group">
<label for="unitSelect">Select Unit of Measurement:</label>
<select id="unitSelect" class="form-control">
<option value="metric">Metric</option>
<option value="imperial">Imperial</option>
</select>
</div>
<div class="form-group">
<label for="heightInput">Height:</label>
<input id="heightInput" class="form-control" type="number" step="any" placeholder="Height (cm)">
</div>
<div class="form-group">
<label for="weightInput">Weight:</label>
<input id="weightInput" class="form-control" type="number" step="any" placeholder="Weight (kg)">
</div>
<div class="bmi-result" id="bmiResult"></div>
<div class="bmi-interpretation" id="bmiInterpretation"></div>
<div class="legend">
<div class="legend-item">
<span style="background-color: blue; width: 20px; height: 20px; border-radius: 50%; display: inline-block;"></span>
<span>Underweight</span>
</div>
<div class="legend-item">
<span style="background-color: green; width: 20px; height: 20px; border-radius: 50%; display: inline-block;"></span>
<span>Normal Weight</span>
</div>
<div class="legend-item">
<span style="background-color: orange; width: 20px; height: 20px; border-radius: 50%; display: inline-block;"></span>
<span>Overweight</span>
</div>
<div class="legend-item">
<span style="background-color: red; width: 20px; height: 20px; border-radius: 50%; display: inline-block;"></span>
<span>Obese</span>
</div>
</div>
<div class="note">BMI is a useful measure for adults. It may not be accurate for athletes, elderly, or children.</div>
<div class="button-container">
<button class="restart-button" onclick="location.reload();">Calculate Again</button>
</div>
</div>
</body>
</html>
NEW APPS
These are apps made by the community!