当我使用 iPad 触摸打开下拉菜单时,我无法通过触摸窗口中的其他位置来退出菜单,就像在 PC 上那样。
我正在使用 Safari 运行 webapp,并且我知道 Safari 不会为 iPad 注册不可点击区域的点击,所以我想知道这是否是我无法退出下拉菜单的原因,如果所以,我该如何解决这个问题。
我知道 ExtJS 不适用于 iPad,但我相信我的问题与 ExtJS 对 iPad 的不良支持无关。
在此先感谢,克里斯
当我使用 iPad 触摸打开下拉菜单时,我无法通过触摸窗口中的其他位置来退出菜单,就像在 PC 上那样。
我正在使用 Safari 运行 webapp,并且我知道 Safari 不会为 iPad 注册不可点击区域的点击,所以我想知道这是否是我无法退出下拉菜单的原因,如果所以,我该如何解决这个问题。
我知道 ExtJS 不适用于 iPad,但我相信我的问题与 ExtJS 对 iPad 的不良支持无关。
在此先感谢,克里斯
解决方案是将事件处理程序添加到主面板。我使用以下方法来实现这一点。
// "forms" was used for a dual purpose
var forms = Ext.dom.Query.select('{overflow=auto}');
for(var i = 0; i < forms.length; i++) {
// If the element's ID has "panel" in it
if (forms[i].id.search("panel") == 0) {
var panel = document.getElementById(forms[i].id);
//touchmove works the best of the events I found
panel.addEventListener("touchmove", function(e) {
for (var j = 0; j < myComboboxes.length; j++) {
myComboboxes[j].collapse();
}
}, false);
}
}
}