鼠标悬停在禁用按钮上

时间:2017-09-03 09:10:47

标签: gwt

我有一个禁用按钮。在鼠标悬停此禁用按钮时,我需要使用GWT显示弹出窗口。 我试图将它包裹在一个面板中,编码鼠标悬停在面板上。但它一直没有立即工作。

1 个答案:

答案 0 :(得分:0)

IMO你应该尽量避免这种情况。例如,如果您只想显示一个小工具提示,则可以使用不同的标题来启用和禁用状态,以解释禁用的原因。

如果你仍想对禁用按钮上的过度事件作出反应,你可以使用类似的东西。

SimplePanel p = new SimplePanel();
Button b = new Button("hover me to toggle disable"); p.add(b);
p.addDomHandler(ev -> button.setEnabled(!b.isEnabled()), MouseOverEvent.getType());
RootPanel.get().add(p);

虽然您已经注意到,但浏览器不会触发禁用输入上的事件。因此,如果您在不通过面板的情况下移动鼠标并直接转到按钮,则不会收到该事件。您可以使用此样式解决此问题。

button.gwt-Button[disabled] {
    pointer-events: none;
}

但可能这可能有一些缺点,或者可能不适用于所有浏览器。