当用户将鼠标悬停在SVG中的文本上时,我需要一个工具提示。此外,文本和工具提示内容应该可以使用javascript修改。
以下适用于Firefox,但不适用于Chrome。这样做的正确方法是什么?
HTML:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="100" height="100">
<rect width="100" height="100" style="fill:black;stroke-width:0"></rect>
<text id="text1" x="50" y="15" text-anchor="end">text1</text>
<text id="text2" x="80" y="15" text-anchor="end"
transform="translate(0,50)">text2</text>
</svg>
Javascript(使用jQuery):
$('#text1').attr('title', 'Tooltip 1');
$('#text2').attr('title', 'Tooltip 2');
我的jsfiddle:http://jsfiddle.net/getvictor/ctaVA/
答案 0 :(得分:17)
标题子元素将作为工具提示。
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="100" height="100">
<rect width="100" height="100" style="fill:black;stroke-width:0"></rect>
<text id="text1" x="50" y="15" text-anchor="end"><title>Tooltip 1</title>text1</text>
<text id="text2" x="80" y="15" text-anchor="end"
transform="translate(0,50)"><title>Tooltip 2</title>text2</text>
</svg>
答案 1 :(得分:3)
您可以使用<title>
元素。
请注意,那些使用
<title>
显示工具提示的实现通常只有在<title>
确实是其父级的第一个子元素的情况下才会这样做。
来自https://developer.mozilla.org/en/docs/Web/SVG/Element/title
所以,在你的例子中,那将是
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="100" height="100">
<title id="title1">This is a tooltip</title>
<rect width="100" height="100" style="fill:black;stroke-width:0"></rect>
...