Gwt 插入a<;部门>;a内的标签<;a>;使用DOM标记

Gwt 插入a<;部门>;a内的标签<;a>;使用DOM标记,gwt,Gwt,我希望能够插入一个围绕标记的div标记 当我在寻找用图像而不是文本创建锚定的方法时,我发现了下面的类。 现在可以了,但是我需要把中的包围起来 但我需要这个: public class ImageAnchor extends Anchor { public ImageAnchor() { } public void setURL(String imageURL) { Image img = new Image(imageURL);

我希望能够插入一个围绕
标记的div标记

当我在寻找用图像而不是文本创建锚定的方法时,我发现了下面的类。 现在可以了,但是我需要把
中的
包围起来
但我需要这个:

public class ImageAnchor extends Anchor {
    public ImageAnchor() {
    }    

    public void setURL(String imageURL) {
        Image img = new Image(imageURL);
        img.setStyleName("navbarimg");
        setTarget("_blank");

        DOM.insertBefore(getElement(), img.getElement(), DOM
                .getFirstChild(getElement()));
    }
}

为了理解这背后的原因,我不知道需要多少ImageAnchors,这取决于从数据库返回的内容。
我只是将它们添加到一个流程面板中,并带有相应的图像和链接。(稍后我计划添加一个出现在悬停上的描述)

为什么不使用HTMLPanel呢

<a class="gwt-Anchor" target="_blank" href="#">
  <img src="img.png" class="navbarimg"/>
</a>
HTMLPanel myHTML=新的HTMLPanel(
"");
RootPanel.get().add(myHTML);
看起来容易一点,而且不需要太多DOM操作

另一方面,你可能真的有很好的理由使用这样的东西

<a class="gwt-Anchor" target="_blank" href="#">
  <div class="style">
    <img src="img.png" class="navbarimg"/>
  </div>
</a>
类ImageAnchor扩展了Anchor{
公共图像主播(){
}    
公共void setURL(字符串imageURL){
图像img=新图像(图像URL);
img.setStyleName(“navbarimg”);
setTarget(“_blank”);

HTMLPanel stylePanel=新的HTMLPanel("未按预期工作。它输出以下内容:我的道歉。我没有复制和粘贴您的代码,我错过了一个元素。它工作得很好。忽略我以前的命令。如果我理解最初的问题,海报需要包括,以便他可以向其锚添加更多样式。难道不可能只添加次要样式吗?例如:img.setStyleNa我(“第二风格”);包括新的风格?
        HTMLPanel myHTML = new HTMLPanel(
            "<a class=\"gwt-Anchor\" target=\"_blank\" href=\"#\">  " +
            "<div class=\"style\">    " +
            "<img src=\"img.png\" class=\"navbarimg\"/>  " +
            "</div>" +
            "</a>");
    RootPanel.get().add(myHTML);
        class ImageAnchor extends Anchor {
        public ImageAnchor() {
        }    

        public void setURL(String imageURL) {
            Image img = new Image(imageURL);
            img.setStyleName("navbarimg");
            setTarget("_blank");

            HTMLPanel stylePanel = new HTMLPanel("<div class=\"style\"");


            DOM.insertBefore(stylePanel.getElement(), img.getElement(), DOM
                    .getFirstChild(getElement()));

            DOM.insertBefore(getElement(), stylePanel.getElement(), DOM
                    .getFirstChild(getElement()));
        }
    }

    ImageAnchor ia = new ImageAnchor();
    ia.setURL("img.png");

    RootPanel.get().add(ia);
<a class="gwt-Anchor" target="_blank"><div><img src="img.png" class="navbarimg"></div></a>