我正在使用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(){});
但没有运气。
答案 0 :(得分:0)
DOM.createElement()
将在HTML命名空间中创建元素。您的<title>
元素必须位于SVG名称空间中。
您需要使用本机JS DOM方法来执行此操作。请参阅Jared Garst关于其他问题的答案: