更新:
嗨,伙计们,这是我已经走了多远:http: //jsfiddle.net/vsJMn/(我正在使用“RaphaelJS australia”示例进行测试)
我现在无法弄清楚的唯一问题是如何在单击另一个元素时将元素的状态恢复为 0。我已经弄清楚了如何在单击一个元素时获得“活动/选定”状态,然后悬停在其余元素上起作用,但是随后单击的任何元素都停留在最后一个状态并且悬停事件不会不要再工作了。
有人知道如何解决这个问题吗?
老问题:
我想创建与此非常相似的东西:http ://www.voanews.com/content/olympic-village-map/1446501.html
我希望能够绘制自定义形状,单击时,每个形状都会在页面上显示不同的文本(可能在“div”中)。
就像链接中的示例一样,我想通过鼠标悬停、单击等添加交互式样式。当您将鼠标悬停在形状上时,它们会动画,然后当您单击一个时,它会保持选中状态,从而允许悬停动画在其他形状,直到您单击另一个形状。还有文字褪色效果。
我一直在寻找许多方法来创建它,特别是 HTML5 画布、Raphaeljs ( http://raphaeljs.com/australia.html ) 和其他一些方法,但我似乎无法做到正确。
那个“奥运村”正是我所需要的——任何人都可以帮我解决这个问题。
谢谢@vlad-otrocol,我查看了您建议的教程,它们真的很有帮助。他们确实有很多我需要的东西,但我找不到我想要的一切。
感谢@kevin-nielsen 的示例,您的方式比我在 RaphaelJS 示例网站上一直在研究的“澳大利亚”示例要容易得多。这是我已经走了多远:http: //jsfiddle.net/k2GQj/。
我已将我的示例与您的示例集成在一起,并拥有:http: //jsfiddle.net/L3bHz/。
我需要做的是能够单击一个元素,更改其颜色,然后保持该颜色状态,同时允许其他元素在悬停时更改颜色(如“奥运村地图”)。
正如您从我的示例中看到的那样,目前我有一个“mouseout”事件,它将每个元素颜色更改为一种颜色。我是否需要为每个元素创建一个“mouseout”事件 - 是否有办法在悬停后将元素颜色恢复为原始状态?
还有凯文,在你的例子中,你如何定位文本?在我一直在处理的示例中,使用了 DIV,因此可以使用 CSS 更改定位。
再次感谢大家的帮助——我会在这方面做更多的工作,并会报告任何进展!