我有一个应用程序有这个 JSNI 需要传递一个容器 id,我在其中传递一个 DIV id:
HTML:
<div class='example-waveform' id='example4'></div>
爪哇:
initWave("example4");
public native void initWave(String __id)/*-{
var instance = this;
var data = $wnd.data = [];
var waveform = $wnd._waveform = new $wnd.Waveform({
container: $doc.getElementById(__id),
interpolate: false
});
}-*/;
这很好用,但是我需要使用 GWT 容器而不仅仅是 HTML div。
我试过:
HTMLPanel container = new HTMLPanel("Test");
container.getElement().setId("someid");
String id = container.getElement().getId();
initWave(id);
但是 Javascript 函数不能接受我传递给它的元素 id(我正在使用第三方 JS 库,所以我无法调试这个)所以我只是假设我只需要传递一个 DIV id,但是DIV 没问题,但我需要一个 GWT 小部件,我可以像 GWT UI 中的显示/隐藏/等那样操作它。
在这种情况下,有没有办法获取 GWT 面板(HTMLPanel 或 VerticalPanel)的 DIV 元素和 id,以便我可以将其传递给我的 JSNI 函数。