使用标题在SVG对象上显示工具提示在GWT中动态添加时不起作用

时间:2015-08-18 11:02:29

标签: javascript dom gwt svg tooltip

我正在使用GWT 2.6.1(+ GWT Graphics)并尝试绘制SVG对象并在每个对象上显示工具提示,如下所示:

Point point = new Point(100, 100);
Circle reading = new Circle(point.getX(), point.getY(), 3);
reading.setFillColor("#000");
final String infoTip = "120 bpm";
Element titleElement = DOM.createElement("title");
titleElement.setInnerText(infoTip);
reading.getElement().appendChild(titleElement);

现在虽然SVG圈正确绘制,但工具提示并不起作用。我尝试将生成的html粘贴到一个静态的html文件中,并且工作正常,所以它与动态地将标题元素添加到圆圈有关,我想但不知道如何解决它。

我尝试在延迟操作中添加title元素:

Scheduler.Get().ScheduleDeferred(...)

我尝试在onLoad中添加它:

    Event.sinkEvents(reading.getElement(), Event.ONLOAD);
    Event.setEventListener(reading.getElement(), new EventListener(){});

但没有运气。

1 个答案:

答案 0 :(得分:0)

DOM.createElement()将在HTML命名空间中创建元素。您的<title>元素必须位于SVG名称空间中。

您需要使用本机JS DOM方法来执行此操作。请参阅Jared Garst关于其他问题的答案:

Using SVG in GWT