android - overflow-y :hidden, 但仍然可以在 android 上使用 firefox 滚动

标签 android jquery html css scroll

我使用 jquery 在叠加​​层中打开局部 View (显示固定的 div 并禁用底层网页的滚动)。这似乎适用于桌面上的 chromium 和 firefox,也适用于 chrome for android,但不适用于 firefox/android:

$('a#manage-albums').click(function(){
    $.get( this.href )
        .done(function( data ) {
            $('div#flvr-overlay-content').html(data);
            $('div#flvr-overlay-back').show();
            $('html,body').css('overflow-y','hidden');
        });
    return false;
});

叠加层出现并显示其内容,已修复,一切看起来都不错,但我仍然可以滚动底层网页。

如果重要的话,我也使用了这个元标记:

<meta name="viewport" content="height=device-height, width=device-width, initial-scale=1.0, user-scalable=no" />

如何为 Android 上的 Firefox 禁用滚动(overflow-y)?

编辑:

看来 firefox 不喜欢 'overflow-y'

用这一行:

$('html,body').css('overflow','hidden');`

滚动似乎停止/减少到 firefox 菜单栏的高度。

最佳答案

方法有很多,先试试

gridview.setOnTouchListener(new OnTouchListener(){

@Override
public boolean onTouch(View v, MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_MOVE){
        return true;
    }
    return false;
}

});

这是一个 GridView 。

Source

对于 ScrollView 使用“verticalScrollDisabled = true”

或使用(javascript)

document.body.addEventListener('touchmove', function(e){ e.preventDefault(); });

jquery

$(document).bind('touchmove', function(e) {
    e.preventDefault();
});

如果使用 $("body").css("overflow", "hidden!important"); 应该可以工作

关于android - overflow-y :hidden, 但仍然可以在 android 上使用 firefox 滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31883703/

相关文章:

android - 使用 retrofit2 上传照片 : retrofit: 2. 0.0-beta4

javascript - 三个下拉菜单相互响应

javascript - 如何让一个按钮对应不同的点击div html jquery php?

Android:更改 View 顺序会导致 "Unfortunately, app has stopped"OK。为什么?

android - 我可以在 android 服务中显示 AutoCompleteTextView 的位置名称建议吗?

jQuery Droppable,让元素被删除

javascript - 如何在单击按钮时更改图像

html - 居中按钮文本

HTML:通过单个 radio 输入传递多个变量?

android - Recyclerview View 未填充