私は次のことをしようとしています:
クラスによって示される、いくつかのリンクの特定のハンドラーを追加したいと考えています。
$("a.link_list").live("click", new ListLinkHandler());
そのような新しいリンクが生成されるため、.live()代わりに必要です。.bind()(私は jQuery.live()が を支持して非推奨になっていることを知っ.on()ていますが、gwt-query には.on()まだありません。)
ハンドラーを次のように定義しました ( gwtquery の例と同じように):
public class ListLinkHandler extends Function {
@Override
public boolean f(Event e) { [...] }
}
ただし、リンクをクリックしてもハンドラ メソッドが呼び出されることはありません。Chrome Dev Tools でイベント リスナーを確認できます: http://screencloud.net/v/bV5V。bodyですのでオンになっていると思います.live()。
使ってみたところ.bind()、うまくいきました。bodyイベント リスナーが変更され、a.link_listハンドラーが本来の機能を実行しますが、(文書化されているように、私はテストしませんでした) 新しく作成されたリンクに対してではありません。
メソッドのバグを報告しました.live()が、何か間違っている可能性があります。
また、gwtquery なしでそれを行う方法がわかりません。GWT には、クラスごとに要素を選択する方法も、新しい要素にリスナーを継続的に追加する方法もないようです。