GWT:检索生成的类名
GWT: Retrieve generated classname
GWT:2.7 与 GSS
我想使用类名检索元素的父元素(不是层次结构中的第一个元素)。
为此,我希望使用从 CssResources 生成的 css 类名,但它没有给我与 DOM 中使用的类名相同的类名。
class Test
{
interface Style extends CssResource
{
String test();
}
public interface Resource extends ClientBundle
{
@Source( "Test.gss" )
Style style();
}
public static Resource res = GWT.create(Resource.class);
}
资源结果GWT.log(Test.res.style().test());
:
[package-name]-[ClassName]-Style-test
DOM 结果(MyRenderer 是我使用样式的 UiRenderer):
[包名]-[类名]_MyRendererImpl_GenCss_style-test
我应该怎么做才能检索元素的特定父元素?
有没有最好的方法?
PS: 我完全不用Widget,只用Element。
如果您的元素已经在 Dom 中,请尝试 Dom class 找到父元素,请参阅 reference
您有 getElementbyId(String id) 和 getParent(Element element) 的静态方法,可以在这里为您提供帮助
这就是 CssResource
的全部要点(嗯,其中之一):源代码中相同的 class 名称在编译后会变成不同的名称,因此您不必担心名称冲突。
生成的名称取决于 CssResource
接口的完全限定名称,因此您必须使用完全相同的接口(但是您可以在不同的 ClientBundle
接口中使用它,这实际上是错误来源:https://code.google.com/p/google-web-toolkit/issues/detail?id=6144 )
GWT:2.7 与 GSS
我想使用类名检索元素的父元素(不是层次结构中的第一个元素)。
为此,我希望使用从 CssResources 生成的 css 类名,但它没有给我与 DOM 中使用的类名相同的类名。
class Test
{
interface Style extends CssResource
{
String test();
}
public interface Resource extends ClientBundle
{
@Source( "Test.gss" )
Style style();
}
public static Resource res = GWT.create(Resource.class);
}
资源结果
GWT.log(Test.res.style().test());
:[package-name]-[ClassName]-Style-test
DOM 结果(MyRenderer 是我使用样式的 UiRenderer):
[包名]-[类名]_MyRendererImpl_GenCss_style-test
我应该怎么做才能检索元素的特定父元素?
有没有最好的方法?
PS: 我完全不用Widget,只用Element。
如果您的元素已经在 Dom 中,请尝试 Dom class 找到父元素,请参阅 reference 您有 getElementbyId(String id) 和 getParent(Element element) 的静态方法,可以在这里为您提供帮助
这就是 CssResource
的全部要点(嗯,其中之一):源代码中相同的 class 名称在编译后会变成不同的名称,因此您不必担心名称冲突。
生成的名称取决于 CssResource
接口的完全限定名称,因此您必须使用完全相同的接口(但是您可以在不同的 ClientBundle
接口中使用它,这实际上是错误来源:https://code.google.com/p/google-web-toolkit/issues/detail?id=6144 )