1/*function cat_view(cat_id) { 2 alert(cat_id); 3 $.getJSON('ajax/get_det/' + cat_id, function (data) { 4 alert(cat_id); 5 if (data != "") { 6 $('.location_det').html(data); 7 } 8 }); 9 }*/ 10function cat_view(cat_id) { 11 //alert(cat_id); 12 $.getJSON('ajax/get_det/' + cat_id, function (data) { 13 //alert(cat_id); 14 if (data != "") { 15 $('.location_det').html(data); 16 } 17 }); 18} 19$(document).ready(function () { 20 21 $(".filters a").hover( 22 function () { 23 // Get hovered index 24 let idx = $(this).index(".filters a"); 25 26 // Zoom corresponding image 27 $(".location_det .flip-card") 28 .eq(idx) 29 .find("img") 30 .css("transform", "scale(1.08)"); 31 }, 32 function () { 33 // Reset all images on mouse leave 34 $(".location_det .flip-card img").css("transform", "scale(1)"); 35 } 36 ); 37 38}); 39document.addEventListener("DOMContentLoaded", function () { 40 41 const section = document.querySelector(".bg-trip-img"); 42 const textWrapper = document.querySelector(".text-wrapper"); 43 44 // Images with their own colors 45 const slideshowData = [ 46 {img: "../images/pic121.jpg", color: "#ffffff"}, 47 {img: "../images/pic131.jpg", color: "#ffeb3b"}, 48 {img: "../images/pic151.jpg", color: "#111111"} 49 ]; 50 51 let index = 0; 52 let slideshowInterval; 53 let isRunning = false; 54 55 // Apply image + its text color 56 function applySlide(i) { 57 const slide = slideshowData[i]; 58 59 section.style.backgroundImage = `url(${slide.img})`; 60 61 // Apply color to parent wrapper 62 textWrapper.style.setProperty("color", slide.color, "important"); 63 } 64 65 // Start slideshow 66 function startSlideshow() { 67 if (isRunning) 68 return; 69 isRunning = true; 70 71 slideshowInterval = setInterval(() => { 72 index = (index + 1) % slideshowData.length; 73 applySlide(index); 74 }, 5000); 75 } 76 77 // Stop slideshow 78 function stopSlideshow() { 79 clearInterval(slideshowInterval); 80 isRunning = false; 81 } 82 83 // Section visibility 84 const observer = new IntersectionObserver((entries) => { 85 entries.forEach(entry => { 86 if (entry.isIntersecting) 87 startSlideshow(); 88 else 89 stopSlideshow(); 90 }); 91 }, {threshold: 0.3}); 92 93 observer.observe(section); 94 95 // Initial load 96 applySlide(0); 97}); 98/*parallax*/ 99document.addEventListener("scroll", function () { 100 const scrollPos = window.scrollY; 101 102 /* Parallax background movement */ 103 const bg = document.querySelector(".parallax-bg"); 104 bg.style.backgroundPositionY = -(scrollPos * 0.02) + "px"; 105 106 /* Image zoom-in on scroll */ 107 document.querySelectorAll(".parallax-item").forEach(img => { 108 if (scrollPos > 50) { 109 img.classList.add("scrolled"); 110 } else { 111 img.classList.remove("scrolled"); 112 } 113 }); 114 115 /* Fade-in text once section is in view */ 116 const section = document.querySelector(".holy-content"); 117 const rect = section.getBoundingClientRect(); 118 if (rect.top < window.innerHeight - 100) { 119 section.classList.add("visible"); 120 } 121});
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.