2015-07-13 102 views
0

我正在使用raphael.js進行繪製,並且希望修改標題屬性(更改顏色,字體大小等)。更改raphael對象的標題屬性

circle.attr({ 
    title: 'This is a circle.', 
    fill: 'red' 
}); 

這是我的jsfiddle

有沒有辦法做到這一點?或者可能將自定義工具提示添加到raphael對象? 編輯:這是一個預期的修改:我想在我的工具提示上打印「Hello World」「你好」紅色,然後一個「新行」字符,最後,「世界」在藍色。

這不起作用,但可能有助於瞭解我正在嘗試做什麼。

circle.attr({ 
    title:"<font color="red">Hello</font><br><font color="blue">World!</font>" 
}); 
+0

@RodrigoDela,我已經編輯解釋一種修改我想做的事。 –

回答

1

拉斐爾沒有速記功能,但你可以很容易地改變通過簡單的DOM操作所呈現的SVG元素:

circle.node.onmouseover = function() { 
    this.style.cursor = 'pointer' 
    this.querySelector('title').textContent = 'This is a new title'; 
} 

分叉(現在的實際工作)小提琴 - >http://jsfiddle.net/nheL8add/


更新:我現在認識到ÿ ou實際上是在問:「做了一個HTML元素標題屬性支持HTML?」 (我完全專注於改變標題元素,而不是「Edit」之後的部分)。答案是不。 circle元素的title屬性與所有其他HTML元素中的其他title屬性完全相同。但是,您可以使用工具提示腳本(如qTip2或類似文件)來獲得所需的效果。我推薦qtip2,因爲它支持<SVG>元素。跳過圓元素本身的title屬性和使用qTip2代替:

$("#canvas circle").qtip({ 
    style: { classes: 'tooltip' }, 
    content: { text: '<font color="red">Hello</font><br><font color="blue">World!</font>' }, 
    position:{ my:'center center', at:'center center' },  
    show: 'mousemove mouseenter mouseover'  
}); 

另一個分叉小提琴 - >http://jsfiddle.net/ajLnhete/