【问题标题】:Using jquery sortable lists with GWT使用带有 GWT 的 jquery 可排序列表
【发布时间】:2012-08-02 23:05:23
【问题描述】:

我正在构建一个 GWT Web 应用程序,并希望为类似于以下内容的可排序列表实现一些 jquery 代码:http://jqueryui.com/demos/sortable/,但实际实现要复杂一些。似乎 GWT 对这类事情没有任何本机支持,这就是为什么我试图加入一些基本的 jquery 代码。

问题是 jquery 事件似乎不会从 GWT 中动态生成的列表项触发。有没有办法解决?

【问题讨论】:

    标签: jquery list gwt drag jquery-ui-sortable


    【解决方案1】:

    我们使用 gwt-dnd 进行拖放,到目前为止它非常稳定。

    最接近您需求的演示:http://allen-sauer.com/com.allen_sauer.gwt.dnd.demo.DragDropDemo/DragDropDemo.html#InsertPanelExample

    一般来说,我发现使用其他 GWT 库比混合使用 jQuery 和 GWT 更可取。

    【讨论】:

    • 是的,我发现 jQuery 和 GWT 不太喜欢一起玩。似乎 jQuery 无法绑定到 GWT 推出的动态视图。我决定改为在 iFrame 中运行一些视图,然后使用 GWT 进入 iFrame 并提取数据。我觉得使用 iFrame 可以让我控制不同框架的范围,并防止它们相互干扰。我对一起破解他们的 DnD 框架并不感兴趣,因为我只需几行 js 就可以在 jQuery 中完成。
    • 好的。分离建议:在 iframe 中加载不同的视图以便您可以使用不同的库最终看起来更像是一种 hack,而不是使用成熟的 GWT 库。
    • 是的,但是每次我想在 GWT 中使用不同的 javascript 库时,我都必须为它编写一个 GWT 包装器并不断调整它以使其以我需要的特定方式工作.当您试图让多个不同的 js 库在 GWT 内部一起工作并且没有任何工作正常时,这很烦人。这将解决这个问题,并使我以后可以轻松添加其他库,而无需为它们编写 GWT 包装器。
    【解决方案2】:

    eeewwhwh,不要在 gwt 上使用外部 js 库,这会在您的浏览器中运行一团糟的代码以及大量的内存泄漏。

    如果您喜欢花哨,请查看 GXT,但是对于必须处理非常大的数据数组的应用来说,它有点慢。

    如果您想自己实现它,这将是一些工作,但并非不可能。当您单击选择一个对象时,您需要使对象动态隐藏和显示。然后一旦切换到选中,您将需要根据光标的位置动态更改对象的绝对位置。完成此操作后,您可以在对象容器上添加一个侦听器,以查找鼠标悬停在容器上的时间。从那里您可以再次获取坐标并动态显示对象边界框,以便将对象推到您的可拖动对象周围。

    我肯定会使用 gwt-dnd 库来处理大部分问题。

    【讨论】:

      猜你喜欢
      • 2011-01-08
      • 1970-01-01
      • 1970-01-01
      • 2012-07-13
      • 2011-07-05
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 2011-10-31
      相关资源
      最近更新 更多