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

HTML Canvas - 无法获取未定义或空引用的属性“getElementById”

HTML Canvas - 无法获取未定义或空引用的属性“getElementById”

子衿沉夜 2021-11-18 15:43:57
<!DOCTYPE html><head><script>var ctx = document.getElementById('ctx').getContext('2d');</script></head><body><canvas id="ctx" style="border: 1px solid #000000;"></canvas></body>这将返回:0: Unable to get property 'getElementById' of undefined or null reference有什么理由吗?
查看完整描述

2 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

您的代码中的问题似乎是 javascript 试图通过 id 获取一个元素,该元素在 javascript 运行时不存在。所以你所要做的就是将你的 javascript 放在文档的末尾(对于一些简单的测试)。在编写“真实”应用程序时,您应该将 javascript 包装在某种加载处理程序中,以确保它仅在文档完全加载后才被触发。


<!DOCTYPE html>

<html>

<head>

  

</head>

<body>


<canvas id="ctx" width="150" height="150"></canvas>


<script>

  var ctx = document.getElementById('ctx').getContext('2d');

  console.log(ctx)

</script>


</body>

</html>


查看完整回答
反对 回复 2021-11-18
?
慕桂英546537

TA贡献1848条经验 获得超10个赞

添加一个最小的 HTML 文档来保存画布。


错误是说它无法从未定义中获取 getElementById,这意味着文档未定义。


<!DOCTYPE html>

<html>

  <head></head>

  <body>

    <canvas id="ctx" style="border: 1px solid #000000";></canvas>

    <script>var ctx = document.getElementById('ctx').getContext('2d');</script>

  </body>

</html>

以上工作在 Safari 和 Firefox 上没有错误


查看完整回答
反对 回复 2021-11-18
  • 2 回答
  • 0 关注
  • 242 浏览
慕课专栏
更多

添加回答

举报

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