javascript可以检测滚动条何时不可用(即在移动浏览器上)?

时间:2010-07-27 11:51:50

标签: javascript css scrollbar mobile-safari mobile-website

我有一个基于javascript的Scrolling Widget Thingy™。它所做的一件事是创建一个固定的高度div并给它overflow: auto

Alas on mobile Safari(和其他移动浏览器)overflow: auto;没有显示滚动条。 “折叠”以下的任何内容只能偶然发现。

有没有办法在javascript中检测到这一点,没有诉诸浏览器检测?例如

if (there is a scrollbar) {
    /* give me a fixed height and a scrollbar */
} else {
    /* Do something more suited to this situation */
}

1 个答案:

答案 0 :(得分:3)

我只能想到诉诸肮脏的伎俩:

  1. 创建50x50框
  2. 将框设置为overflow: auto
  3. 带文字的洪水框
  4. 读取框内部大小:如果50x50,则出现问题
  5. 将结果存储在变量和销毁框中
  6. ...鉴于实际上有一种测量内部大小的方法,滚动条被排除在外。

    无论如何,这是一个可怕的算法,数以百计的事情可能会出错......想想它只是一个想法。