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
該函數不會拋出錯誤或只是不會被解僱?
任何想法,謝謝!