我在我的代码中使用了rmanivannan的速度表jquery插件(https://github.com/rmanivannan/speedometer-jquery-plugin),但是他没有很多jquery的经验。
如何更新速度表以响应变化的变量,而不是键入框中的数字?我认为它将是' eventListenerType'区域,但我无法找到它会是什么。
我的示例代码如下所示 - 我的变量BoatSpeed最初从0开始,但随着用户控制船只而随时间变化。我希望车速表能够实时显示BoatSpeed的值。
css
<link href="https://rmanivannan.github.io/demos/speedometer-reusable/css/speedometer.css" rel="stylesheet" type="text/css" />
HTML
<input id="BoatSpeedometer"/>
的javascript
<script src="https://rmanivannan.github.io/demos/speedometer-reusable/js/jquery.js"></script>
<script src="https://rmanivannan.github.io/demos/speedometer-reusable/js/speedometer.js"></script>
var BoatSpeed = 0;
$("#BoatSpeedometer").myfunc({divFact:10,eventListenerType:'keyup'});
非常感谢!
答案 0 :(得分:0)
以下是我所做的事情:当keydown
事件被触发时,输入字段的值会根据您的BoatSpeed
变量进行修改(在我的示例中,您可以用向上和向下箭头键改变速度)。
我不认为你可以在不改变输入字段值的情况下手动改变车速表的值,所以我认为没有更好的解决方案。
<link href="https://rmanivannan.github.io/demos/speedometer-reusable/css/speedometer.css" rel="stylesheet" type="text/css" />
<input id="BoatSpeedometer" style="display: none;"/>
<script src="https://rmanivannan.github.io/demos/speedometer-reusable/js/jquery.js"></script>
<script src="https://rmanivannan.github.io/demos/speedometer-reusable/js/speedometer.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var BoatSpeed = 0;
$("#BoatSpeedometer").myfunc();
$(document).keydown(function(e) {
if (e.which == 38)
BoatSpeed += 10;
else if (e.which == 40)
BoatSpeed -= 10;
$("#BoatSpeedometer").attr("value", BoatSpeed).trigger("change");
});
});
</script>
另请注意,输入字段可以隐藏。