如何使用JavaScript与gwt Uibinder
我想在我的应用程序中执行JavaScript,这是用GWT编写的。 这是在常规HTML中运行的代码:
$(document).ready(function() { $('ul').roundabout(); });
(假设jquery.js
和jquery.roundabout.js
在同一个文件夹中。)
我有一个somePresenter
(有someView.java
和someView.ui.xml
),我希望上面的代码在someView.ui.xml
工作。
我复制粘贴上面的代码到XML(除了标签我有
标签)但JavaScript似乎没有被执行(我看到的只是在脚本之前应该是的列表) 。
我怎样才能使它工作?
相关问题:我可以用一些如何使用GQuery(类似于:GQuery。$()。getScript(jquery.roundabout.js)加载外部js脚本)?
提前致谢
您不能在UiBinder中放置并期望看到它被加载和执行,原因与您在JS中使用相同的表达式将
放在
innerHTML
中的原因相同(因为HTMLPanel
和UiBinder将使用innerHTML
引擎罩)。
如果需要动态加载脚本,请查看ScriptInjector
:
ScriptInjector.fromUrl(GWT.getModuleBaseURL() + 'jquery.js').inject();
我想GQuery使用ScriptInjector
或类似地工作。
我最终设法做到这一点
在project.html
,然后在加载相关页面时(我的演示者)执行与JSNI调用相关的JavaScript。