禁用在Mac OS X上滚动Safari 9

时间:2015-12-12 21:45:15

标签: javascript css macos safari

我正在尝试使用以下代码禁用Safari 9(OS X El Capitan)上的X滚动,但它不起作用,它适用于Firefox和Chrome但Safari仍在滚动,任何人都可以帮助我?< / p>

我的CSS代码:

function disableX(e)
{
    if(scrollX > 0)
    {
        e.preventDefault();
        e.stopPropagation();
    }
}
addEventListener("scroll", disableX);

我的JavaScript代码:

def sample(request):
    return render(request, 
                  'sample_template.html',
                  {
                      'data': [1, 2, 3, 4, 5],
                  })

3 个答案:

答案 0 :(得分:0)

添加位置:相对;身体

body {
  position:relative;
  overflow-x:hidden;
}

More infos on: Safari Oveflow Hidden Problem

答案 1 :(得分:0)

尝试添加!important,否则请打开chrome dev工具以查看其使用的属性。

答案 2 :(得分:0)

overflow-x: hidden;body上的html确实没有多大意义,即如果其他东西要看,那么用户应该能够看到它,我想这就是Safari阻止它的原因。

也许您应该将该设置应用于DOM层次结构中的某个元素。

---&GT;编辑部分:我的意思是:从bodyhtml中删除这些规则,将DIV直接放在<body>内(即所有内容的包装)并将溢出规则应用于那个DIV。