代码之家  ›  专栏  ›  技术社区  ›  Jonas Byström

如何在GWT中设置属性?

  •  0
  • Jonas Byström  · 技术社区  · 14 年前

    DOM.setElementAttribute ,我做错什么了吗?

    class MyListBox extends com.google.gwt.user.client.ui.ListBox {
      ....
      protected void setHoverAutoWidth() {
        addDomHandler(new MouseOverHandler() {
          public void onMouseOver(MouseOverEvent event) {
            DOM.setElementAttribute(getElement(), "width", "auto");
          }
        }, MouseOverEvent.getType());
        addDomHandler(new BlurHandler(){
          public void onBlur(BlurEvent event) {
            DOM.setElementAttribute(getElement(), "width", "100px");
          }
        }, BlurEvent.getType());
      }
    }
    

    (我知道改变宽度的方法比直接设置style属性要少,但我现在不关心css。)

    编辑:

    3 回复  |  直到 14 年前
        1
  •  1
  •   Hank Gay    14 年前

    我很肯定这会让你 width 不是

    你可能在找 setStyleAttribute .

        2
  •  1
  •   Hank Gay    14 年前
        3
  •  1
  •   dslh    14 年前

    在以后的GWT版本中,您可以使用 getElement().getStyle().setWidth(100, Unit.PX) ,这比DOM类中基于字符串的方法提供了一点额外的编译时正确性。使用 getElement().getStyle().clearWidth() 将宽度设置回 auto .