Improve click-scroll functionality by adding checks for section existence before accessing offsets, enhancing robustness against missing elements. Update scroll event handling for better performance and reliability.

This commit is contained in:
Mohammed Al-yaseen
2025-05-15 01:13:25 +03:00
parent 94d5eac08c
commit 6e3339083c

View File

@@ -5,29 +5,35 @@ var sectionArray = [1, 2, 3, 4, 5];
$.each(sectionArray, function (index, value) { $.each(sectionArray, function (index, value) {
$(document).scroll(function () { $(document).scroll(function () {
var offsetSection = $("#" + "section_" + value).offset().top - 90; var section = $("#" + "section_" + value);
var docScroll = $(document).scrollTop(); if (section.length) { // Check if section exists
var docScroll1 = docScroll + 1; var offsetSection = section.offset().top - 90;
var docScroll = $(document).scrollTop();
var docScroll1 = docScroll + 1;
if (docScroll1 >= offsetSection) { if (docScroll1 >= offsetSection) {
$(".navbar-nav .nav-item .nav-link").removeClass("active"); $(".navbar-nav .nav-item .nav-link").removeClass("active");
$(".navbar-nav .nav-item .nav-link:link").addClass("inactive"); $(".navbar-nav .nav-item .nav-link:link").addClass("inactive");
$(".navbar-nav .nav-item .nav-link").eq(index).addClass("active"); $(".navbar-nav .nav-item .nav-link").eq(index).addClass("active");
$(".navbar-nav .nav-item .nav-link").eq(index).removeClass("inactive"); $(".navbar-nav .nav-item .nav-link").eq(index).removeClass("inactive");
}
} }
}); });
$(".click-scroll") $(".click-scroll")
.eq(index) .eq(index)
.click(function (e) { .click(function (e) {
var offsetClick = $("#" + "section_" + value).offset().top - 90; var section = $("#" + "section_" + value);
e.preventDefault(); if (section.length) { // Check if section exists
$("html, body").animate( var offsetClick = section.offset().top - 90;
{ e.preventDefault();
scrollTop: offsetClick, $("html, body").animate(
}, {
300 scrollTop: offsetClick,
); },
300
);
}
}); });
}); });