在创建我想要使用Kinetic的画布后,我想以其他方式操纵它。我无法在文档中找到Kinetic创建的画布的ID。我想通过使用getElementById来获取它。谢谢你的时间。
答案 0 :(得分:1)
不幸的是,Kinetic没有使用ID定义Canvas。使用“getCanvas”函数可能有效,但您需要从特定的图层调用它。对我来说最好的解决方案是使用div容器的id并调用“getElementsByTagName”来访问Canvas元素。但通常你只有一个Canvas,所以你可以这样得到它:
console.log(document.getElementsByTagName('canvas')[0]);
唯一的问题是Kinetic为每个图层创建一个单独的Canvas元素,所以最好只在你的项目中使用一个图层,或者你必须浏览所有图层:
var canvases = document.getElementsByTagName('canvas');
for (var i = 0; i < canvases.length; i++) {
console.log(canvases[i]);
}
答案 1 :(得分:0)
使用getCanvas()
会有效吗? (Kinetic documentation只是说它用于“获取图层画布”)
此外,我不确定这个想法是否相同,但您可以查看this question。