JavaScriptのoffsetTopやscrollTopにはマイナス値があるので注意

offsetTopやscrollTopにはマイナス値がある

JavaScriptのoffsetTopやjQueryのscrollTopで一番上の親要素の値を取得するとパソコンのブラウザの場合は0を返してマイナス値を返すことはない。

しかし、scrollイベントで取得時はスマートフォンやタブレットの場合、スワイプしたときに一時的にマイナス値になることがあるので注意が必要。

jQueryのscrollTopで一番上の親要素の値を取得するサンプル

もしもこのことを知らずに「$(window).scrollTop() === 0 」のようなコードを書いてしまうとマイナス値になったときに動作しなくなってしまう恐れがある。

JavaScriptのoffsetTopやscrollTopにはマイナス値があるので注意