2017-09-03 115 views
0

我有一个禁用的按钮。在鼠标悬停的这个禁用按钮上,我需要使用GWT显示一个弹出窗口。 我试图将它包裹在一个面板中并且编码的鼠标悬停在面板上。但它并不是一直都在工作。鼠标悬停在禁用按钮

回答

0

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

如果你仍然想对禁用按钮上的over事件做出反应,你可以使用类似这样的东西。

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; 
} 

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