为了账号安全,请及时绑定邮箱和手机立即绑定

document.getElementById(“elementId”).innerHTML

document.getElementById(“elementId”).innerHTML

慕妹3242003 2022-08-18 10:11:36
首先,让我解释一下我想要做什么:我想为视频游戏制作一个脚本,计算游戏中的多少钱,并创建一个元素来显示它。跟踪金钱部分很容易,但显然制作元素就像我试图做的最令人困惑的事情一样。Chrome 控制台的 Lightshot 屏幕截图:https://prnt.sc/shszc2 屏幕截图中蓝色突出显示的行在执行两次后出现错误。我用红色框住了错误消息。我将从我拥有的脚本中删除一些代码,主要针对对我想要帮助的问题很重要的代码,省略我理解的代码。还要注意,我对在Javascript中生成图形非常陌生,所以如果我制作元素的方式很可怕,那么这是因为我只是不断尝试随机的废话,直到某些东西似乎有效并坚持使用任何东西。// The elements that I created. Again i know next to nothing about elements, so the only thing that I // know will work is this catastrophe. var initialDiv = document.getElementById('onecup');mainText = initialDiv.appendChild(document.createElement('mainText'));mainText.style.position = 'absolute';mainText.style.left="50%";mainText.style.top="64px"mainText.style.width = "290px";mainText.style.height = "160px";mainText.style.color = "white";mainText.style.zindex = 1;mainText.style.fontSize = "18px"trackerBack = mainText.appendChild(document.createElement('trackerBack'));trackerBack.style.position = 'absolute';trackerBack.style.left="-200px"trackerBack.style.top="0px"trackerBack.style.width = "400px";trackerBack.style.height = "160px";trackerBack.style.backgroundColor = "black";trackerBack.style.opacity = ".20"trackerBack.style.zindex=1;diffTotal = trackerBack.appendChild(document.createElement('diffTotal'));diffTotal.id = "diffTotal"diffTotal.style.position = 'absolute';diffTotal.style.top="20%"diffTotal.style.left="40%";diffTotal.style.color = "rgba(255,255,255,255)";diffTotal.style.opacity = "1"diffTotal.style.zindex = 2;diffTotal.style.fontSize = "30px"diffFielded = diffTotal.appendChild(document.createElement('diffFielded'));diffFielded.id = "diffFielded"diffFielded.style.position = 'absolute';diffFielded.style.top="-15px"diffFielded.style.left="0px";diffFielded.style.color = "rgba(255,255,255,255)";diffFielded.style.opacity = "1"diffFielded.style.zindex = 2;}
查看完整描述

1 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

我明白了:


diffTotal = trackerBack.appendChild(document.createElement('diffTotal'));

diffFielded = diffTotal.appendChild(document.createElement('diffFielded'));


conductValues("diffTotal", (aValP + aValU - bValP - bValU))

conductValues("diffFielded", (aValU - bValU))


conductValues = function(targetName, targetAssignment) {

    document.getElementById(targetName).innerHTML = toBna2(targetAssignment)

}

这些是导致错误的行。 是 的子项。在第一次调用中,您将替换 的内部 HTML。当您执行此操作时,您正在删除 ,因为它被新值替换,然后它不能再被找到,因为它不再存在。diffFieldeddiffTotalconductValuesdiffTotaldiffFielded


我假设实际上应该是 的另一个孩子,所以你应该这样做:diffFieldedtrackerBack


diffFielded = trackerBack.appendChild(document.createElement('diffFielded'));

提示:将样式内容移动到 css 文件中。


查看完整回答
反对 回复 2022-08-18
  • 1 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信