[英]Remove style from gwt dialogbox header
如何刪除依賴樣式?
在GWT對話框,我需要刪除的樣式.dialogtopleft
從.gwt-Dialogbox . dialogtopleft
.gwt-Dialogbox . dialogtopleft
。
如何將其刪除?
您將需要jQuery輕松做到這一點。 您可以找到一些GWT的jQuery包裝器,但也可以使用普通的DOM遍歷來實現。
我有一個小的遞歸方法,可以通過給定的類名查找元素。 它返回找到的第一個元素或為null。
public Element findChildElementByClassName(Element parent, String className) {
List<String> classNames = Arrays.asList(parent.getClassName().split(" "));
if(classNames.contains(className))
return parent;
else {
Element foundElement = null;
NodeList<Node> childNodes = parent.getChildNodes();
for(int i = 0; i < childNodes.getLength() && foundElement == null; i++)
if(childNodes.getItem(i).getNodeType() == Node.ELEMENT_NODE) {
Element childElement = (Element) childNodes.getItem(i);
foundElement = findChildElementByClassName(childElement, className);
}
return foundElement;
}
}
我希望它可以自我解釋,但是您需要注意,在將節點類型轉換為元素之前必須檢查該節點類型。
您應該以這種方式使用它:
DialogBox dialogBox = new DialogBox();
// ... initialize dialogBox
dialogBox.show();
Element dialogTopLeftElement = findChildElementByClassName(dialogBox.getElement(), "dialogTopLeft");
if(dialogTopLeftElement != null)
dialogTopLeftElement.removeClassName("dialogTopLeft");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.