我想使用ID和Ressource Bundle动态更改图像。
Element changedImage;
/* imageID is the Id for the previous image */
changedImage = Document.get().getElementById("imageId");
/* And myImageBundle is the resource Bundle and icon the new image*/
changedImage.setInnerHTML(myImageBundle.icon().getHTML());
但没有任何反应,它是相同的形象。我错过了什么吗?
非常感谢答案或建议。
--------解决方案---------------
我找到了一个解决方案,它运作正常,但不知怎的,我认为这不是最好的解决方案。一切都在下一个功能:
private void switchImage( AbstractImagePrototype imageBundled) {
String newStyleFromImageBundle, value;
value = "style=";
newStyleFromImageBundle = extractStyle(value ,imageBundled.getHTML());
Element e = Document.get().getElementById("imageHeaderLogo");
// removing the current style
e.removeAttribute("style");
// setting the new style with the previous one retrieved from the image bundled's html
e.setAttribute("style",newStyleFromImageBundle );
}
希望它有所帮助,随时可以判断是否有更好的方法来做这件事,或者这是你见过的最糟糕的事情...... :-)。
答案 0 :(得分:0)
我认为这是applyTo的具体内容。你为什么不这样做:
/*assuming that the element with id "imageId" is a real image
element and is not undefined:*/
myImageBundle.icon().applyTo(Image.wrap(Document.get().getElementById("imageId")));
//editted to use Image.wrap
以上内容应将您在icon()中定义的图像应用于ID为“imageId”的图像