我有以下 JS 对象:
var sources = {
assets: [],
liabilities: [],
income: [],
expenditure: []
}
如您所见,这个对象包含许多 JS 数组。我使用以下行将 HTML 中隐藏部分中的一些图像添加到这些数组中:
sources.assets[0] = document.getElementById("building").src,
sources.assets[1] = document.getElementById("chair").src,
sources.liabilities[0] = document.getElementById("burger").src,
sources.liabilities[1] = document.getElementById("chips").src,
我现在想要做的是:当mousedown
在画布上的这些图像之一上检测到单击(或)时,我想找出该图像属于对象内的哪个数组,并保存该数组的值(即数组名称-资产/负债等)到一个变量。
但是我不确定如何找到它...当检测到单击时,我尝试使用以下行打印图像属性的内容:
console.log("value of variable obj:" + output + ". Shape is " + obj.shape + ". index is " + obj.shape.index);
但这只是在控制台中给了我以下打印输出
value of variable obj:shape: [object Object]; pixel: [object Uint8ClampedArray]; . Shape is [object Object]. index is 7
在控制台中。
我正在使用 KineticJS 库的本地副本将图像绘制到画布上,并且我知道该变量obj
是mousedown
在 kineticJS 库中的函数中使用的变量。
用户需要将每个“可拖动”图像拖到其对应的描述框(位于画布上)。
我想知道的是如何找出被点击的图像属于哪个数组,以便我可以将该数组的名称与用户拖动“点击”的图像的名称进行比较图像到:如果它们相同,则用户已将图像拖到正确的描述框,否则,则他们做出了错误的选择。
有谁知道我如何找出点击的图像属于哪个数组?