1$(document).on("click", "#mobile-menu-button", function (e) { 2 e.preventDefault(); 3 openMobileMenu(); 4}); 5 6$(document).on("click", "#mobile-menu-overlay", function (e) { 7 e.preventDefault(); 8 closeMobileMenu(); 9}); 10 11/* Mobile sub-menu (SERVICES / COMPANY) toggle. 12 On touch devices `:hover` doesn't fire reliably, so we attach a click 13 handler to the dropdown trigger anchors inside the off-canvas menu and 14 flip an `.is-open` class on their parent .mobile-menu-item. 15 Only triggers used as a toggle (those with href="javascript:void(0)") 16 are matched â direct page links keep their default behaviour. */ 17$(document).on( 18 "click", 19 "#mobile-menu .mobile-menu-item > a[href^='javascript']", 20 function (e) { 21 e.preventDefault(); 22 var $item = $(this).closest(".mobile-menu-item"); 23 // Close any other open sub-menu first so only one is expanded at a time. 24 $("#mobile-menu .mobile-menu-item") 25 .not($item) 26 .removeClass("is-open"); 27 $item.toggleClass("is-open"); 28 } 29); 30 31openMobileMenu = function () { 32 $("#mobile-menu").addClass("show"); 33 $("#mobile-menu-overlay").removeClass("d-none"); 34}; 35 36closeMobileMenu = function () { 37 $("#mobile-menu").removeClass("show"); 38 $("#mobile-menu-overlay").addClass("d-none"); 39}; 40 41window.onscroll = function () { 42 makeSticky(); 43}; 44 45var header = document.querySelector(".header-container"); 46var sticky = header.offsetTop; 47 48function makeSticky() { 49 if (window.pageYOffset > sticky) { 50 header.classList.add("sticky"); 51 setTimeout(function () { 52 header.classList.add("visible"); 53 }, 10); // 10ms gecikme 54 } else { 55 header.classList.remove("sticky", "visible"); 56 } 57} 58 59$(document).ready(function () { 60 var $scrollContainer = $(".hlas-results-marquee-area"); 61 var $scrollText = $(".hlas-results-list"); 62 var scrollSpeed = 25; // Animasyon süresi (milisaniye) 63 var autoScrollActive = true; 64 65 function smoothScroll() { 66 if (autoScrollActive) { 67 var currentScroll = $scrollContainer.scrollLeft(); 68 var scrollWidth = $scrollText.width(); 69 var containerWidth = $scrollContainer.width(); 70 71 if (currentScroll >= scrollWidth - containerWidth) { 72 $scrollContainer.animate( 73 { scrollLeft: 0 }, 74 scrollSpeed, 75 "linear", 76 function () { 77 smoothScroll(); 78 } 79 ); 80 } else { 81 $scrollContainer.animate( 82 { scrollLeft: currentScroll + 1 }, 83 scrollSpeed, 84 "linear", 85 function () { 86 smoothScroll(); 87 } 88 ); 89 } 90 } 91 } 92 93 function stopAutoScroll() { 94 autoScrollActive = false; 95 $scrollContainer.stop(); 96 } 97 98 // Otomatik kaydırmayı baÅlat 99 function startAutoScroll() { 100 autoScrollActive = true; 101 smoothScroll(); 102 } 103
104 $scrollContainer.on("mouseenter", function () { 105 stopAutoScroll(); 106 }); 107 108 $scrollContainer.on("mouseleave", function () { 109 startAutoScroll(); 110 }); 111 112 startAutoScroll(); 113}); 114 115function setLoadingState(button, isLoading) { 116 const spinner = button.querySelector(".spinner-border"); 117 118 if (isLoading) { 119 spinner.classList.remove("d-none"); 120 button.disabled = true; 121 } else { 122 spinner.classList.add("d-none"); 123 button.disabled = false; 124 } 125}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.