我有一个selectfield
在桌面上完美运行(滚动、选择、触发正确的事件、更新适当的字段等),但在移动设备(iPhone)上运行时不会在选择后消失。
进行选择后,选择字段“轮”不会消失,甚至在点击遮罩(在滚动选择器区域之外)时也不会消失。同样,这只发生在移动设备上,并且在桌面上非常好。
听起来像一个框架错误?继续阅读以获取更多线索...
{
xtype: 'selectfield',
id: 'editor-page',
name: 'page',
label: 'Page',
labelWidth: 70,
options: [
{text: 'N/A', value: 'N/A'},
{text: '1', value: '1'},
{text: '2', value: '2'},
{text: '3', value: '3'}
// ...
]
}
我尝试过的事情(没有运气)
根据我在网络上看到的类似问题,我尝试弄乱设置
showAnimation: 'false'
。强制
hideOnMaskTap: 'true'
(即使它应该是默认的)环境
modal: 'true'
设置
stopMaskTapEvent: 'false'
(允许在选择器外部进行点击)(并且......上述的每一种组合,以防框架怪癖或我对它们相互依赖的误解。)
Selectfield 事件在桌面上触发而不是在移动设备(iPhone)上触发?
在 上selectfield
,我将侦听器放在以下事件上,作为捕获选择更改并强制执行hide
or的一种手段blur
,但事实证明,它们仅在桌面(Chrome)上触发,而不在移动 Safari 上触发。
listeners: {
'render': function (thisComponent) {
alert("select!");
thisComponent.blur();
},
'action': function (thisComponent) {
alert("action!");
thisComponent.blur();
},
'select': function (thisComponent) {
alert("select!");
thisComponent.blur();
}
}
最后,我不想承认,但是是的,我正在使用 Sencha Touch 1.1.0
*喘气!哦,恐怖!*
此时,项目可能没有足够的时间考虑迁移到 2.x 的所有后果。因此,如果我绝对必须解决这个问题,这是我在潜入迁移之前的最后一次努力。