单元格的有效GWT DOM /消耗事件列表是什么?

时间:2011-03-03 18:46:22

标签: dom gwt right-click

我已多次遇到此问题,但找不到任何全面的内容。我想知道GWT的所有有效消耗DOM事件的完整列表。

NativeEvent的GWT docs说:

public final java.lang.String getType()
Gets the enumerated type of this event.
Returns:
the event's enumerated type

这个枚举在哪里?它确实存在吗?使用的(我发现的)实际代码明确地说这些事件总是使用字符串:“click”,“contextmenu”,“mouseup”,“dblclick”等等(等等涵盖了这么多的迷宫...)

我正在尝试为CellTable ala this post中的单元格实现双击和右键单击。我正在通过超级(“点击”,“contextmenu”,“mouseup”,“dblclick”);在我的AbstractCell扩展的构造函数中。然后我覆盖onBrowserEvent:

@Override

    public void onBrowserEvent(Context context, Element parent, ImageProperties<T> value,
            NativeEvent event, ValueUpdater<ImageProperties<T>> valueUpdater) {
        if (event.getButton() == NativeEvent.BUTTON_RIGHT) {
            event.stopPropagation();
            event.preventDefault();
            eventBus.fireEvent(new RightClickEvent<Context>(context, event));
        } else {
            super.onBrowserEvent(context, parent, value, event, valueUpdater);
        }
    }

但是,我遇到了两个问题。一,默认的contextMenu仍然显示(通过我的自定义) - 更不用说它甚至不使用DOM事件类型。一个不同的问题,我如何检查它是否是一个双击事件?我发现很难相信它实际上是一组任意的字符串......

提前致谢! 约翰

2 个答案:

答案 0 :(得分:4)

原生JavaScript DOM事件类型really are arbitrary strings以及对给定事件类型(及其名称)的支持可能取决于浏览器。

答案 1 :(得分:3)

BrowserEvents class中您要查找的确实存在。你应该使用那些常量而不是“魔术”字符串文字。