为什么在为画布声明变量时添加[0]
Why add [0] when declaring a variable for canvas?
在此代码中:
var canvas = $("#myCanvas")[0];
var ctx = canvas.getContext("2d");
为什么我们必须添加[0]
来识别画布?这让我有点困惑,因为[n]
通常是在有多个元素具有相同名称并且我们需要寻址特定元素时添加的。但是id只能引用一个唯一的元素。
此语法用于从jQuery对象检索底层画布DOMElement,以便可以使用getContext()
方法(jQuery对象没有)。
$('#myCanvas') // = canvas DOMElement wrapped in a jQuery object
$('#myCanvas')[0] // = canvas DOMElement
document.getElementById('myCanvas') // = canvas DOMElement
另请参阅:
什么是jQuery对象
画布API参考
jQuery始终返回类似数组的对象,即使您使用(唯一)id作为选择器也是如此。
在您的情况下,[0]
将返回第一个(也是唯一一个)实际元素。
相关文章:
- Javascript动态变量(添加了随机数)
- 简单地将拆分变量添加到对象中
- 如何使用PHP将javascript变量添加到mysql数据库中
- 我想将查询字符串变量添加到JSON名称/值对中
- Javascript将变量添加到代码中
- 如何将 POST 变量添加并保存到 Qualtrics
- 将 JavaScript 变量添加到 HTML 元素
- 将递增变量添加到Html Select的Id中
- javascript如何将变量添加到字符串中
- 将变量添加到函数中的数组中
- 使用jquery将变量添加到头中
- 将变量添加到对象函数调用的末尾
- 将php变量添加到ajax调用中
- 如何在 jquery 中将变量添加到 html 中
- 在 htnl.erb 文件中将 ruby 变量添加到 javascript
- 将变量添加到 javascript url 调用
- 为返回的变量添加时间戳
- 将变量添加到变量 JavaScript 中
- 挖空.js将变量添加到代码中
- 传单 - 根据变量添加和删除列表中的所有图层