我正在开发具有可滚动能力的模态窗口,例如 pinterest 窗口。当它们被触发overflow: hidden
时body
,overflow: auto
在模态框容器上定义。这在桌面浏览器上效果很好,但我在 iPad 上的第一次测试(我假设一般来说可能在 iOS 上)揭示了一个问题:
当模态的滚动结束时,如果文档比模态长,则滚动继续。
我尝试这样做的目的是仅在由模式或其容器触发时才接受滚动:
// Disable browser scrolling on iOS
$(document).on('touchmove',function(e) {
if (($(e.target).attr('id') != id) &&
($(e.target).attr('id') != ('modal-'+id))) {
e.preventDefault();
}
});
严格来说,它确实有效。模态滚动,当它结束滚动页面时,只有在模态内部滚动时才可能。
你有什么主意吗?
如果你愿意,可以在你的 iPad 上试试(你必须点击模态按钮):http ://www.onebigrobot.com/beta/altair/transforms-so
先感谢您!