【问题标题】:document.getElementById on the canvas return null画布上的 document.getElementById 返回 null
【发布时间】:2017-01-25 00:07:58
【问题描述】:

我是 javascript 新手,我正在学习它。这样做时,我遇到了这个我无法弄清楚的问题,我在这里寻求您的帮助。

这是我访问的页面,http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_canvas_empty

现在,当我在控制台(萤火虫)上运行以下命令时,它返回 null。

document.getElementById("myCanvas");

为什么我在这里没有得到预期的结果?

【问题讨论】:

  • 该页面使用 iframe 来保存示例文档。您的控制台正在查看主页。
  • @Barmar 谢谢!我自己是想不通的。
  • 大多数开发工具允许您选择要在哪个 iframe 中运行代码。

标签: javascript html canvas html5-canvas


【解决方案1】:

调用draw函数时DOM已经加载完毕,没错。

但是 var canvas = document.getElementById('control');-line 在此之前被评估,因为它不在绘图函数中。它在元素被渲染之前立即在文档中执行。

我建议你把你的 init 函数改成类似的东西

var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 2015-02-02
    • 2011-11-01
    • 1970-01-01
    相关资源
    最近更新 更多