免責事項:この記事はブロガーオリジナル記事ですが、許可ブロガーなく再生してはなりません。https://blog.csdn.net/u012193330/article/details/80752521
ポップ通常のサイズの場合は、以下のスキームを使用することができます。
1.デフォルトのイベントを防ぎます
短所:プログラムの特定の互換性があり、すべてのブラウザでは有効ではありません。ローリングポップの存在については、適用されません。
長所:ときにポップ表示、ページがトップに戻るないロール、位置に固定されたまま
//阻止弹窗滚动
function stopScroll() {
// 弹出时
$('body').on('touchmove', preventDefaultFn);
$('body').css({
'overflow': 'hidden'
})
}
function recoverScroll() {
// 隐藏时
$('body').off('touchmove', preventDefaultFn);
$('body').css({
'overflow': 'auto'
})
}
function preventDefaultFn(event) {
event.preventDefault();
}
2.固定位置
短所:ボックスを再生するとポップアップし、非表示、ページの最上部とページスクロールが発生するので、その状況はページ点滅します
利点を:あなたは状況が本来のローリングをポップアップ解決することができます
function stopScrollLong() {
var top = -$(window).scrollTop();
$('body').css({
'position': 'fixed'
})
setTimeout(function () {
$('body').css({
'top': top + 'px'
})
}, 10)
}
function recoverScrollLong() {
var top = parseInt(-$('body').css('top').replace('px', ''));
$('body').css({
position: 'static'
})
$(window).scrollTop(top);
}
H5エンドのモバイルページでは、あなたは、アプリケーションのこれらの2つの方法を組み合わせたポップなケースの下のほとんど解決するためにスクロールすることができ
リファレンス:https://dancon.gitbooks.io/git-books/content/js/essay/dialog_forbid_back_scroll.html