2013-04-02 53 views
1

我想使用window.name作为页面刷新发生(或被迫)时使用的某个标识符的持有者。但是,我注意到GWT将它设置为模块定义中定义的rename-to属性值。有什么办法可以避免它?GWT:避免在Web应用程序加载时设置window.name

P.S.我知道我可以使用sessionStorage,或者甚至可以使用其他一些机制。我只是对这个具体案例感到好奇 - 想知道如何覆盖这种GWT行为。

+1

您确定窗口正在更改其名称吗?我记得该模块会更改它加载的iframe,但不会更改全局窗口。或者你使用不同的链接器?或者在您的jsni而不是'$ wnd'中将窗口称为'window'? –

+0

你是完全正确的。现在,当我阅读JSNI文档时,我了解了$ wnd和$ doc。 –

+0

如果你可以发布你的最终解决方案作为答案,那将是很好的。 – SSR

回答

2

您确定窗口名称已更改吗?我记得该模块会更改它加载的iframe,但不会更改全局窗口。或者你使用不同的链接器?或者在您的jsni而不是$wnd中将窗口指向窗口?

private native void setWindowName(String newName) /*-{ 
    $wnd.name=newName; 
}-*/; 
相关问题