【问题标题】:Having troubles getting innerHTML to work properly无法让 innerHTML 正常工作
【发布时间】:2020-01-07 17:55:32
【问题描述】:

我正在尝试编写代码来显示桨当前移动的速度(制作一个小游戏,换档和控制会改变速度)并且我一直在使用代码来更改一些文本。控制台没有抛出错误,语法验证器说没问题,我没有看到问题,但文本不会改变。这是有问题的代码:

var speedmod = 0;
$(document).keydown(function(keyPressed){
    if (keyPressed.keyCode == 16){
        speedmod -= 5;
        if (speedmod < -70){
            speedmod = -70;
        }
    }
    if (keyPressed.keyCode == 17){
        speedmod += 5;
        if (speedmod > 125){
            speedmod = 125;
        }
    }
    var displaypaddx = (75 + speedmod).toString(10) + 'px';
    var sdisplay = document.getElementById('pmspeed');
    console.log(displaypaddx);
    sdisplay.innerHtml = displaypaddx;
});

(这不是所有的代码,只是影响显示的东西)

编辑:忘了提一下,脚本是在 span(id 为 pmspeed)被加载之后加载的。

【问题讨论】:

  • sdisplay.innerHtml ==> sdisplay.innerHTML
  • @ambian 我什至不知道我是怎么错过的。谢谢!

标签: javascript html innerhtml


【解决方案1】:

应该是 innerHTML 而不是 innerHtml 像这样:

var speedmod = 0;
$(document).keydown(function(keyPressed){
    if (keyPressed.keyCode == 16){ // shift
        speedmod -= 5;
        if (speedmod < -70){
            speedmod = -70;
        }
    }
    if (keyPressed.keyCode == 17){ // ctrl
        speedmod += 5;
        if (speedmod > 125){
            speedmod = 125;
        }
    }
    var displaypaddx = (75 + speedmod).toString(10) + 'px';
    var sdisplay = document.getElementById('pmspeed');
    console.log(displaypaddx);
    sdisplay.innerHTML = displaypaddx;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>
<div id="pmspeed">
</div>
</body>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-11
    • 2012-09-05
    • 2017-11-06
    • 2011-09-06
    • 1970-01-01
    • 2023-03-10
    • 2020-10-16
    • 2014-01-15
    相关资源
    最近更新 更多