2
私はちょうどこれを解決する方法が分かりませんが、おそらくかなり簡単です。 私はページ全体の要素をページ上の特定の位置にスクロールするカスタムスクロール機能を作成しました。関数がエラーをスローしたときに完全なJSブラックアウトを防止しますか?
function scroll(selector, animate, viewOffset) {
pageOffset = selector.offset();
scrollPos = pageOffset.top - viewOffset;
if (animate) {
$('html, body').animate({ scrollTop : scrollPos + 'px' }, {
duration: '500',
easing: 'easeInOutExpo'
});
} else {
$('html, body').scrollTop(scrollPos);
}
}
は、だから私はそのような関数を呼び出す... scroll($('#something'), true, 30);
この機能はselector
はもちろんの機能を存在しないに沿って渡された場合は、次のエラーをスローし、本当にうまく動作します...
pageOffset = selector.offset();
scrollPos = pageOffset.top - viewOffset;
Uncaught TypeError: Cannot read property 'top' of null
このエラーが発生した場合、私のJSはもう動作しません。
この問題を解決するにはどうすればいいですか?存在しない場合selector
この関数はエラーをスローしないか、または起動しないだけですか?
アイデア、ありがとうございます!