Мой код выдает эту ошибку
Uncaught TypeError: Невозможно прочитать свойство 'top' из undefined.
Этот код работает на рабочем столе, но когда я пытаюсь нажать ссылки на мобильный вид, это выдает вышеупомянутую ошибку. Может кто-нибудь, пожалуйста, помогите мне определить ошибку?
Ниже кода:
var OnePageNavigation = function() {
var navToggler = $('.site-menu-toggle');
$("body").on("click", ".main-menu li a[href^='#'], .smoothscroll[href^='#'], .site-mobile-menu li a[href^='#'], .site-nav-wrap li a", function(e) {
e.preventDefault();
var hash = this.hash;
$('html, body').animate({
'scrollTop': $(hash).offset().top}, 600, 'easeInOutCirc', function() {
window.location.hash = hash;
});
});
};
OnePageNavigation();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<div class="site-mobile-menu site-navbar-target">
<div class="site-mobile-menu-header">
<div class="site-mobile-menu-close mt-3">
<span class="icon-close2 js-menu-toggle"></span>
</div>
</div>
<div class="site-mobile-menu-body">
</div>
</div>
<header class="site-navbar mt-3">
<a href="index.php"> <img src="assets/images/logo.png" alt="logo"> </a>
<a href="index.php"><b><font color="DeepSkyBlue" style="font-size:17.5px;font-family:verdana;"> SAVANI CONSULTANCY </font></b></a>
<div class="container-fluid">
<div class="row align-items-center">
<nav class="mx-auto site-navigation">
<ul class="site-menu js-clone-nav d-none d-xl-block ml-0 pl-0">
<li><a href="index.php" class="nav-link active">Home</a></li>
<li><a href="about.php">About Us</a></li>
</ul>
</nav>
<a href="#" class="site-menu-toggle js-menu-toggle d-inline-block d-xl-none mt-lg-2 ml-3"><span class="icon-menu h3 m-0 p-0 mt-2"></span></a>
</div>
</div>