目标是通过 MouseOut/MouseOver 事件相互替换两个元素。具体来说,元素是标签和列表框。有一些 UI 安排,其中实现在 Chrome 中可以接受,但在 IE(9) 中总是失败。问题发生在从列表框中进行选择期间,因为浏览器会忽略下拉区域作为列表框的一部分,它会触发 mouseOut 处理程序并隐藏列表框。
是否有任何解决方案强制浏览器考虑列表框及其下拉区域?
app.createListBox() .setId('listBox');
app.createLabel('Item1') .setId('label')
.addMouseOverHandler(app.createClientHandler()
.forEventSource().setVisible(false)
.forTargets(app.getElementById('listBox')).setVisible(true));
app.getElementById('listBox')
.addItem('Item1')
.addItem('Item2')
.setVisible(false)
.addMouseOutHandler(app.createClientHandler()
.forEventSource().setVisible(false)
.forTargets(app.getElementById('label')).setVisible(true));
非常感谢