@UiHandler("buttonfire")
void addNewWidget(ClickEvent event) {
htmlPanelHolder.add(new MyCustomWidget(),"placeholder");
}
如何使用jquery以便当MyCustomWidget()在屏幕上显示时它使用jquery“fadein”效果
我已经尝试过让jsni在新的MyCustomWidget()onload()中调用jquery但是不起作用.可以指导我吗?
解决方法:
也可以在不使用jQuery的情况下创建淡入效果.如果你想这样做,只需编写一个这样的Animation类:
public class FadeInAnimation extends Animation {
private final UIObject uiObject;
FadeInAnimation(final UIObject uiObject) {
this.uiObject = uiObject;
}
@Override
protected void onUpdate(final double progress) {
uiObject.getElement().getStyle().setopacity(progress);
}
}
然后你可以在任何小部件上使用它:
new FadeInAnimation(myWidget).run(5000);
注意:对getStyle().setopacity(..)的调用甚至可以处理特殊情况IE6 / 7,它设置了style.filter =’alpha(opacity ='(value * 100)’)’;