1

我有一个看起来像这样的 HTML Dom:

<div class="mydiv" id="mydivId">
  <img src="../xyz.png" class="gwt-Image imgWrapper" draggable="false">
</div>

我正在尝试更改 img 源,因此我进行了以下操作以访问图像但没有成功:

Image imageElement = (Image) Document.get()
                    .getElementById("mydivId")
                    .getElementsByTagName("img").getItem(0);

如何将<img>dom 元素作为 Image 然后更改其来源?

4

2 回答 2

2

获取ImageElement

ImageElement image = (ImageElement) DOM.getElementById("mydivId").getFirstChildElement();

Image或通过包装现有的 img 元素来创建一个小部件,如

Image img = Image.wrap(DOM.getElementById("mydivId").getFirstChildElement());

正如 Saeed Zarinfam 所提到的,如果您为图像本身分配一个唯一的 ID,它会变得更容易。

于 2012-12-19T08:51:43.043 回答
1

您必须为您的图像标签分配一个 id:

<div class="mydiv" id="mydivId">
  <img src="../xyz.png" class="gwt-Image imgWrapper" draggable="false" id="myImgId">
</div>

然后您可以使用以下代码访问它:

Element elem = DOM.getElementById("myImgId");
Window.alert(elem.getAttribute("src"));

或者,如果您不想为图像标签分配 id,则可以使用以下代码:

Element elem = DOM.getElementById("mydivId");
Window.alert(elem.getFirstChildElement().getAttribute("src"));
于 2012-12-19T08:48:35.900 回答