我正在开发一个健身应用程序,我想通过量具来表示BMI,但没有得到如何动态更改量具的值的第二个问题是,当我将量具脚本置于按钮上时,单击它会给我错误“没有元素ID:“找到量规”!”。谁能解决我的这两个问题,因为我是JS新手。因此,请赐教并纠正我。
<html>
<head>
<script src="raphael.2.1.0.min.js"></script>
<script src="justgage.1.0.1.min.js"></script>
<script type="text/javascript">
function funky()
{
var weight=document.getElementById("weight");
var height=document.getElementById("height");
var heightDouble=height.value*height.value;
var bmi=weight.value/heightDouble;
document.getElementById("bmi").innerHTML=bmi;
cc();
}
</script>
</head>
<body>
<input type="text" id="weight"/>
<input type="text" id="height"/>
<input type="button" id="calculate" onClick="funky()"/>
<div id="bmi"></id>
<div id="gauge"></div>
<script>
function cc()
{
var g = new JustGage({
id: "gauge",
value: 10,
min: 0,
max: 100,
title: "Visitors"
});
}
</script>
</body>
</html>
最佳答案
您将要修正您的BMI计算并添加单位(磅vs.公斤,厘米vs.英寸),因为我得到的数字小于零。无论如何,我写了一个新的计算(只是增加重量和高度)来演示如何更新量规:很可能由于脚本相对于div元素的排序方式而出现“找不到量规”错误。
请参阅This JSFiddle demo
<script src="//cdn.jsdelivr.net/raphael/2.1.2/raphael-min.js"></script>
<script src="//cdn.jsdelivr.net/justgage/1.0.1/justgage.min.js"></script>
<body>
<input type="text" id="weight" />
<input type="text" id="height" />
<input type="button" id="calculate" onClick="funky()" value="calculate" />
<div id="bmi"></div>
<div id="gauge" class="200x160px"></div>
<script>
function funky() {
var weight = document.getElementById("weight");
var height = document.getElementById("height");
var heightDouble = height.value * height.value;
var bmi = weight.value / heightDouble;
document.getElementById("bmi").innerHTML = bmi;
//cc();
var weightPlusHeight = parseInt(weight.value) + parseInt(height.value);
g.refresh(weightPlusHeight);
}
var g = new JustGage({
id: "gauge",
value: 0,
min: 0,
max: 200,
title: "BMI"
});
</script>
</body>