我有两个或更多YUI面板相互重叠。我想关闭最上面的面板,当我按下退出键时。
我如何在YUI的背景下做到这一点?
但是在按下退出键时,它会关闭所有面板。
答案 0 :(得分:0)
面板在转义时隐藏,因为这是默认的小部件设置,请参阅http://yuilibrary.com/yui/docs/api/classes/Panel.html#attr_hideOn
与文档所说的不同,触发事件的节点不是窗口小部件的边界框,而是文档节点,请参阅http://yuilibrary.com/yui/docs/api/files/widget-autohide_js_Widget-Autohide.js.html#l57
尝试覆盖hideOn
属性,方法是将窗口小部件的边界框指定为节点。
这样的事情应该有效:
var panel = new Y.Panel({...});
panel.set('hideOn', [{eventName: 'key', keyCode: 'esc', node: panel.get('boundingBox')}]);
我确信它可用于禁用转义,方法是将其从hideOn
列表中排除。