【问题标题】:Detecting with jQuery that a GWT application has loaded使用 jQuery 检测 GWT 应用程序已加载
【发布时间】:2025-12-04 04:00:01
【问题描述】:

我在我的网站中加入了一个 GWT 应用程序,我需要在应用程序完成加载后执行一些功能。

我已经阅读了this question,但从 GWT 调用一些 javascript 函数并不是我想要的。我希望能够从页面中检测到加载已完成。

有没有办法从 GWT 触发一个我可以从 jquery 监听的事件?

理想情况下,无需在 GWT 中创建 jQuery 自定义事件。

【问题讨论】:

    标签: jquery events gwt


    【解决方案1】:

    你可能就用这个

    NativeEvent event = Document.get().createChangeEvent(); DomEvent.fireNativeEvent(event, this);

    触发一个自定义事件(在填充它之后)并将它的事件传播到一些 jQuery 处理程序。当使用来自 GWT 的内置内容时,在 jQuery 中捆绑似乎会产生大量开销(即onLoad();

    此外,您可以查看GWTQuery

    【讨论】:

    • 问题是我需要将一些元素(用于代码突出显示的外部脚本)与一些 GWT 组件(用于 C 代码的自定义 javascript 解释器)结合起来,并且代码突出显示需要在 GWT 组件之前完成发射。但我不希望 GWT 部分必须自己启动突出显示部分。我在 GWT' onLoad 和 jQuery $(document).ready 之间存在竞争条件。
    • 你试过用Scheduler.get().scheduleFinally(...)包裹onLoad()吗?您可以setVisible(false) 尝试加载的小部件,直到突出显示完成,然后在完成后setVisible(true)