我有两个或两个以上的粤板重叠在一起。我想关闭最上面的面板,当我将按转义键。
我怎样才能做到这一点呢?
我已经尝试过这个YUI示例http://developer.yahoo.com/yui/examples/container/keylistener.html
但一按“逃逸”键,就会关闭所有的面板。
发布于 2012-10-08 15:46:32
面板隐藏在转义中,因为这是默认的小部件设置,请参阅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
列表之外。
https://stackoverflow.com/questions/10765561
复制相似问题