(注意:只是澄清一下,“取消选择”是指选择其他形状而不是当前选择的形状,从而取消选择最初选择的形状)
为了进一步阐述,我在画布上得到了一系列形状。我点击的任何形状都会将其颜色从红色变为白色。但是,在任何给定的时间,只能有一个白色的形状。这意味着,如果我先点击形状-A然后再变形B,那么当我点击形状B时,形状A的颜色必须从白色变回红色。
为每个形状添加“click”事件监听器是不言而喻的。但是,我不知道如何指回前一个形状对象,以便我可以恢复其原始颜色。
非常感谢任何帮助!
答案 0 :(得分:0)
(我希望我理解正确) 您的“问题”更多的是程序流问题,并不是特定于画架或任何ObjectType。
您所要做的就是在点击监听器中设置对所点击对象的(全局)引用,我称之为window.lastClickedShape
或类似的东西。每当单击一个形状时,检查是否lastClickedShape != null
并重置该对象的颜色。