當我設置ID爲SVG元素設置自定義attrribute(拉斐爾)
var circle = paper.circle(x, y, r);
circle.node.id = 'circle-id';
一切都很好,我可以看到這樣的預期的結果時,瀏覽文件與調試器:
<circle cx="320" cy="240" r="4" fill="none" stroke="#000" id="circle-id" />
然後,我可以通過document.getElementById
方法或通過jQuery獲取此元素。 但添加其他一些屬性失敗。如果我嘗試添加屬性custom
:
circle.node.custom = 'custom-attr';
我看不出有什麼影響。
什麼樣的屬性可以添加到使用Raphael的SVG元素以及如何添加任意屬性?
你爲什麼要設置一個custom-attr? – j0hnstew 2013-02-15 14:10:11
@stewbydoo,我想要一些html元素與一些svg元素進行通信。例如,在某些div mouseover上更改某個svg元素的背景並在mouseout上將其更改回來。但用'$('elem-elector')。attr('fill','')'換回失敗。通過在svg元素上存儲'original-color'屬性,該功能可以輕鬆實現。 – ivkremer 2013-02-15 14:27:26
聽起來對我來說,使用:hover僞類比使用自己的實現更好。 http://www.quirksmode.org/css/hover.html – 2013-02-15 16:44:50