2014-11-16 72 views
0

我有一堆來自bootstrap模板的原生html元素 - 也就是cleanzone。Gwt和原生HTML的互動

我想直接在我的gwt應用程序中處理直接從html中觸發的事件,不管是否包含html元素作爲gwt小部件。

例如

<div id=avatar class=".gwt-Image"> 
    <img src=avatar6.jpg></img> 
</div> 

我試圖通過使用代碼在一個圖片插件包裝這個 -

Element ele = RootPanel.get("avatar").getElement() ; 
Image.wrap(ele) 

我還試圖

final Element element = DOM.getElementById("avatar"); 
final Image img = Image.wrap(element); 

在拋出異常兩種情況。我的問題是

---因爲我會做我所有使用css的樣式是否有必要將html標籤封裝在頁面中作爲gwt小部件來處理它所觸發的事件,如果是的話什麼是最好的方法來包裝我的頁面上有大量的小部件,幾乎全部來自cleanzone?

回答

0

如果你想正好趕上一個事件,你可以做這些事情:

Event.addNativePreviewHandler(new Event.NativePreviewHandler() { 
    @Override 
    public void onPreviewNativeEvent(Event.NativePreviewEvent nativePreviewEvent) { 
     // catch event     
    } 
}); 

DOM.sinkEvent(element, Event.ONCLICK);