我有一个循环从“TribesView”创建表面并将它们管道化为滚动视图,循环还创建一个带有修饰符的“ProductView”并将其添加到上下文中。我想将事件绑定到“ProductView”表面,如果单击表面,则将不透明度设置为“1”。到目前为止,我只将不透明度设置为数组中的最后一个“ProductView”,无论单击哪个“TribeView”。这是代码:
for (var t = 0; t < tribesLength; t++) {
var tribe = new TribesView({tribes: tribes, tribe: t});
var tribeProduct = new ProductView({tribes: tribes, tribe: t});
var productModifier = new StateModifier({
opacity: '0'
});
tribe.on('click', function() {
productModifier.setOpacity(1)
});
productContext.add(productModifier).add(tribeProduct);
tribe.pipe(scrollView);
surfaces.push(tribe);
}
答案 0 :(得分:1)
是的,您想将productModifier绑定到该函数。当你绑定一个对象时,它表示为&#39;这个&#39;在功能中。
以下是应该如何做的..祝你好运!
tribe.on('click', function() {
this.setOpacity(1);
}.bind(productModifier));