如何将jquery拨盘连接到更改变量?

时间:2017-05-02 07:37:24

标签: javascript jquery

我在我的代码中使用了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'});

非常感谢!

1 个答案:

答案 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>

另请注意,输入字段可以隐藏。