我建立了自己的Store
类,可以在其中选择启用商店上的“轮询”,这将在定义的内部将TaskRunner
任务初始化为reload()
Store
。很好,但是,当PollingStore
绑定到View
时,只要调用LoadMask
方法,reload()
就会自动显示。
这是期望的行为....大部分。我的问题是,当用户有另一个窗口(例如,用于创建新产品)时,在网格的“前面”(以zindex的形式)打开。每当reload()
方法在Store
调用时,现在结合LoadMask
将出现在所有内容的前面,即,包括窗口,所述用户当前正在与之交互,这是从所述Grid
相关联的单独到Store
加载。
我设法覆盖了initComponent
方法,并确保LoadMask
不会出现在“其他”组件上方,但是它仍然设法从用户恰好在模式窗口中填写的任何表单字段中抢走了焦点时间....
同样,这里的步骤细分...
与连接的商店建立网格
在商店上建立TaskRunner任务,每30秒重新加载一次
在查看网格时,打开一个包含一些表单域的模态窗口
开始填写表单字段。每当商店碰巧重新加载时,焦点就会被窃取。这就是问题
任何输入都很好,请询问是否有其他信息或屏幕截图会有所帮助。
最佳答案
我最终修补了4.2.1,这解决了我的问题,LoadMask现在已正确绑定到视图,并且没有优先于模态窗口,并且工具提示不再占据焦点。
关于javascript - ExtJS防止LoadMask窃取焦点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22000166/