jQueryで何も気にしないでコードを打っていると、「offset().top is null or not an object error」が出ているのに気づかなかったりします。
毎度、これが何だったか忘れてしまうのでメモ。
$('#hoge').offset().top;
としていた場合、「html内に#hogeが見つからないよ」ということ。
$(‘#hoge’).css({‘height’:’50px’});なんかは特にエラーが出ないのに、offset()はエラーの対象になってしまうのが、どうもよくわからないです。
zeptojsなんかもエラーが出るのかな?
対処法は、最初に#hogeが存在しているかどうかを調べてあげれば、エラーが出なくなりました。
if ( $('#hoge').length ) { $('#hoge').offset().top; }