代码之家  ›  专栏  ›  技术社区  ›  incutonez

ExtJS 4:Ext.组件焦点和模糊事件

  •  0
  • incutonez  · 技术社区  · 12 年前

    我一直在研究这个简单的测试代码,但我似乎无法让焦点和模糊事件正常工作。我想象的是,用户将鼠标移动到窗口上(激发焦点事件),然后用户将鼠标移出窗口(激发模糊事件)。不幸的是,事实并非如此,也许我只是误解了 blur focus .

    Ext.create('Ext.window.Window', {
      height: 300,
      width: 300,
      title: 'blah',
      autoShow: true,
      listeners: {
        focus: function() {
          alert('focused!');
        },
        blur: function() {
          alert('blurred!');
        }
      }
    });
    

    Fiddle

    现在,我确实发现 this Stack post 非常有趣的是,你可以这样把el放在听众里面。不幸的是,当页面加载时,窗口获得焦点,然后立即失去焦点。。。如果我悬停在上面也一样。所以我很困惑。API说你可以像其他听众一样使用焦点和模糊(没有提到用el包装),但这篇文章说你需要用el包装它?

    1 回复  |  直到 8 年前
        1
  •  0
  •   incutonez    12 年前

    这是JavaScript101,我还是搞错了。焦点和模糊分别用于单击元素时(获得视图焦点)和单击元素外时(失去视图焦点)。唯一奇怪的是,为什么 window.focus() 实际上没有启动焦点事件?这很可能是因为它不会引发任何事件,但为什么呢?您会认为一个名为focus的方法会触发focus事件。