Java 模拟GWT中的jQuery event.which

Java 模拟GWT中的jQuery event.which,java,gwt,gwtquery,Java,Gwt,Gwtquery,GwtQuery文档提供了以下示例作为处理事件的起点: $("h1").bind(Event.ONMOUSEOVER | Event.ONMOUSEOUT, new Function() { public boolean f(Event e) { $(e).toggleClass("highlight"); return true; } }); 但是,与jQuery并行程序不同的是,没有this关键字来引用处理程序中的元素,这就是为什么它作为事件e传递,并包装在$()中

GwtQuery文档提供了以下示例作为处理事件的起点:

$("h1").bind(Event.ONMOUSEOVER | Event.ONMOUSEOUT, new Function() {
  public boolean f(Event e) {
    $(e).toggleClass("highlight");
    return true;
  }
});
但是,与jQuery并行程序不同的是,没有
this
关键字来引用处理程序中的元素,这就是为什么它作为
事件e
传递,并包装在
$()
中。但是,我们无法访问实际事件。我们如何在GWT中计算jQuery中使用
event.which
,或
event.target


具体来说,我要看两个事件。一个是
mousedown
,之后我需要检查它是否是左键(jQuery等价于
e.which==1
),还有一个
keyup
事件,之后我需要检查特定的键(
e.keyCode==13
,等等).

传递给函数的
事件
对象是GWT对象
com.google.GWT.user.client.Event
因此,如果您想知道是否按下了左键:

if (e.getButton() == NativeEvent.BUTTON_LEFT){
 ...
}
如果您想知道按下了哪个键:
e.getCharCode()

如果您没有寻找与GWT相关的答案,请删除。对于贝斯韦尔来说,
gwtquery
基本上与
gwt
相关,因此我认为这也应该被标记为
gwt
问题..亚历山大的答案有什么不对?
事件
传递给
函数
的不是GWT对象吗?什么答案?我在这里看不到任何答案..好吧,GWT不能像jQuery那样简单地用事件绑定所有元素…(除非您使用BodyElement.getElementsByTagName和sinkEvent,我永远不会使用它们)。你可以把JS代码放在HTML文件中,所以我建议使用你的JS代码