Я хочу добавить динамический текст и стиль к подсказкам для элементов SVG. Я могу сделать это, добавив div и стилизуя его (красный прямоугольник ниже). Я бы предпочел позволить библиотеке обрабатывать это, но все они, кажется, используют атрибут title элементов, которые SVG не поддерживают (черный прямоугольник ниже).
Кто-нибудь может предложить такую библиотеку?
$(document).ready(function() {
$("rect#2").mouseover(function(e) {
var myText = "'jQuery' tooltip.";
$("<div class='tooltip'>" + myText + "</div>").appendTo("body");
$("div.tooltip").css({
top: e.clientY,
left: e.clientX
});
});
$("rect#2").mouseout(function() {
$("div.tooltip").remove();
});
});
.tooltip {
padding: 8px;
border: 1px solid black;
background-color: rgb(200, 200, 200);
position: absolute;
z-index: 2;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="svgDiv">
<svg width="200" height="100">
<rect id="1" x="30" y="30" width="50" height="50" title="myText" style="fill:black"/>
<rect id="2" x="130" y="30" width="50" height="50" style="fill:red"/>
Sorry, your browser does not support inline SVG.
</svg>
<div title="'title' tooltip.">div</div>
</div>