我想返回用户单击的对象的唯一名称,但找不到解决方案。以下是我要尝试实现的内容,但是在CoffeeScript中。
$(".class").click(function(){
alert("You clicked on this specific element");
});
我可以找到的最佳示例如下所示,但是每一层都是唯一的,因此无法将它们分配给不同的层。
layerA.on Events.Click, (event, layer) ->
print "This layer was clicked", layer.name
我可以分别听每一层上的事件,但这会违反DRY原理。
我已经设法弄清楚了。这是下面的解决方案。
创建一个数组并将所有图层名称存储在其中
layerArray = [layer, layer2, layer3, layer4]
创建一个函数,该事件将在触发click事件时调用,并传入layer对象和layer索引
callFunc = (layer, index) ->
print index
循环遍历数组中的每一层,然后将单击的层传递给函数
for layer, index in layerArray
layer.on(Events.Click, callFunc)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句