0
我有一個禁用的按鈕。在鼠標懸停的這個禁用按鈕上,我需要使用GWT顯示一個彈出窗口。 我試圖將它包裹在一個面板中並且編碼的鼠標懸停在面板上。但它並不是一直都在工作。鼠標懸停在禁用按鈕
我有一個禁用的按鈕。在鼠標懸停的這個禁用按鈕上,我需要使用GWT顯示一個彈出窗口。 我試圖將它包裹在一個面板中並且編碼的鼠標懸停在面板上。但它並不是一直都在工作。鼠標懸停在禁用按鈕
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;
}
但可能這可能有一些缺點或可能不適用於所有瀏覽器。