1/*$(document).ready(function() { 2 $("[class^='hover_content']").each(function(index) { 3 const hoverCont = $(this).find(".re02_conho ul li .hover_cont"); 4 const cursor = $(".re02_conho ul li .hover_cont").eq(index); 5 6 $(this).mouseenter(function() { 7 hoverCont.css("display", "block"); 8 cursor.css("display", "block"); 9 }); 10 11 $(this).mouseleave(function() { 12 hoverCont.css("display", "none"); 13 cursor.css("display", "none"); 14 }); 15 16 $(this).mousemove(function(e) { 17 cursor.css({ 18 left: e.clientX + "px", 19 top: e.clientY + "px" 20 }); 21 }); 22 }); 23}); 24 25 26 27 28function countUp(target, start, end, duration) { 29 var obj = { count: start }; // ììê° ì¤ì 30 gsap.to(obj, { 31 count: end, 32 duration: duration, 33 onUpdate: function() { 34 // ì ë°ì´í¸ í¨ìë¡ ì¸ë¼ì¸ ì¤íì¼ì ì ë°ì´í¸íì¬ íì 35 target.textContent = Math.ceil(obj.count); // ììì ì´í ë°ì¬ë¦¼ 36 } 37 }); 38} 39 40// ì¹´ì´í¸ ì ì ëë©ì´ì í¸ì¶ 41countUp(document.getElementById("count"), 0, 2006, 3); // ì«ì를 0ë¶í° 100ê¹ì§ 2ì´ê° ì ëë©ì´ì */ 42gsap.registerPlugin(ScrollTrigger, SplitText, CustomEase, Flip); 43 44let scroll; 45let transitionOffset = 1100; 46let staggerDefault = 0.07; 47let durationDefault = 1.47; 48let durationDefaultFaster = 1.2; 49 50/** 51 * Fire all scripts on page load 52 */ 53function initScript() { 54 initSplitText(); 55 initCheckWindowHeight(); 56 initBasicFunctions(); 57 initLazyLoad(); 58 initScrollTriggerPlayVideoInview(); 59 initScrollToAnchorLenis(); 60 initMagnetic(); 61 initVimeoLightbox(); 62 initVimeoPlayer(); 63 initScrolltriggerAnimations(); 64 initBearlyDigitalContactForm(); 65 66 // Refresh ScrollTrigger after initialization 67 ScrollTrigger.refresh(); 68} 69 70/** 71* GSAP Split Text 72*/ 73function initSplitText() { 74 var splitTextLines = new SplitText(".split-lines.not-split", {type: "lines", linesClass: "single-line"}); 75 $('.split-lines.not-split .single-line').wrapInner('<div class="single-line-inner">'); 76 $(splitTextLines.elements).each(function(){ 77 if($(this).hasClass('not-split')) { 78 $(this).removeClass('not-split'); 79 } 80 }); 81} 82 83if(document.querySelector('.split-lines.animate-scroll-each .single-line')) { 84 $('.split-lines.animate-scroll-each .single-line').each(function () { 85 let triggerElement = $(this); 86 let targetElement = $(this).find('.single-line-inner'); 87 88 let tl = gsap.timeline({ 89 scrollTrigger: { 90 trigger: triggerElement, 91 start: "0% 90%", 92 end: "100% 0%", 93 toggleActions: "play none none reset" 94 } 95 }); 96 97 tl.fromTo(targetElement, { 98 yPercent: 110, 99 rotate: 0.001 100 },{ 101 yPercent: 0, 102 rotate: 0.001, 103 ease: "primary-ease", 104 duration: durationDefault, 105 stagger: staggerDefault 106 }, -0.2); 107 }); 108} 109 110 111if(document.querySelector('.split-lines.animate-scroll')) { 112 $('.split-lines.animate-scroll').each(function () { 113 let triggerElement = $(this); 114 let targetElement = $(this).find('.single-line-inner'); 115 116 let tl = gsap.timeline({ 117 scrollTrigger: { 118 trigger: triggerElement, 119 start: "0% 90%", 120 end: "100% 0%", 121 toggleActions: "play none none reset" 122 } 123 }); 124 125 tl.fromTo(targetElement, { 126 yPercent: 110, 127 rotate: 0.001 128 },{ 129 yPercent: 0, 130 rotate: 0.001, 131 ease: "primary-ease", 132 duration: durationDefault, 133 stagger: staggerDefault 134 }, -0.2); 135 }); 136} 137 138if(document.querySelector('.animate-scroll-group')) { 139 $('.animate-scroll-group').each(function () { 140 let triggerElement = $(this); 141 let targetElementLines = triggerElement.find('.single-line-inner'); 142 let targetElementFade = triggerElement.find('.fade-in'); 143 let targetElementButton = triggerElement.find('.btn-animate-in .link'); 144 145 let tl = gsap.timeline({ 146 scrollTrigger: { 147 trigger: triggerElement, 148 start: "0% 80%", 149 end: "100% 0%", 150 toggleActions: "play none none reset" 151 } 152 }); 153 154 if(targetElementLines.length) { 155 tl.fromTo(targetElementLines, { 156 yPercent: 110, 157 rotate: 0.001 158 },{ 159 yPercent: 0, 160 rotate: 0.001, 161 ease: "primary-ease", 162 duration: durationDefault, 163 stagger: staggerDefault 164 }, -0.2); 165 } 166 167 let fadeOffset; 168 if(targetElementLines.length) { 169 fadeOffset = "> -1.16"; 170 } else { 171 fadeOffset = "0.2"; 172 } 173 174 if(targetElementFade.length) { 175 tl.fromTo(targetElementFade, { 176 y: "2em", 177 rotate: 0.001, 178 autoAlpha: 0 179 },{ 180 y: 0, 181 rotate: 0.001, 182 autoAlpha: 1, 183 ease: "Expo.easeOut", 184 duration: durationDefault, 185 stagger: staggerDefault 186 }, fadeOffset ); 187 } 188 189 let btnOffset; 190 if(targetElementLines.length) { 191 btnOffset = "> -1.36"; 192 } else if(targetElementFade.length) { 193 btnOffset = "> -1.36"; 194 } else { 195 btnOffset = "-0"; 196 } 197 198 if(targetElementButton.length) { 199 tl.fromTo(targetElementButton, { 200 yPercent: 110, 201 rotate: 0.001, 202 },{ 203 yPercent: 0, 204 rotate: 0.001, 205 ease: "primary-ease", 206 duration: durationDefault, 207 stagger: staggerDefault 208 }, btnOffset); 209 } 210 }); 211} 212 213//re03 swiper 214function setupAnimation() { 215 if (document.querySelector('.animate-scroll-group')) { 216 $('.animate-scroll-group').each(function () { 217 let triggerElement = $(this); 218 let targetElementLines = triggerElement.find('.single-line-inner'); 219 let targetElementLines2 = triggerElement.find('.single-line-inner2'); 220 let targetElementLines3 = triggerElement.find('.single-line-inner3'); 221 222 let tl = gsap.timeline({ 223 scrollTrigger: { 224 trigger: triggerElement, 225 start: "0% 90%", 226 end: "100% 0%", 227 toggleActions: "play none none reset" 228 } 229 }); 230 231 if(targetElementLines.length) { 232 tl.fromTo(targetElementLines, { 233 yPercent: 110, 234 rotate: 0.001 235 },{ 236 yPercent: 0, 237 rotate: 0.001, 238 ease: "primary-ease", 239 duration: durationDefault, 240 stagger: staggerDefault 241 }, -0.2); 242 } 243 244 let fadeOffset; 245 if(targetElementLines.length) { 246 fadeOffset = "> -1.16"; 247 } else { 248 fadeOffset = "0.2"; 249 } 250 251 if (targetElementLines2.length) { 252 tl.fromTo(targetElementLines2, { 253 yPercent: 110, 254 rotate: 0.001 255 }, { 256 yPercent: 0, 257 rotate: 0.001, 258 ease: "primary-ease", 259 duration: durationDefault, 260 stagger: staggerDefault 261 }, -0.2); 262 } 263 264 let fadeOffset2; 265 if (targetElementLines2.length) { 266 fadeOffset2 = "> -1.16"; 267 } else { 268 fadeOffset2 = "0.2"; 269 } 270 271 if (targetElementLines3.length) { 272 tl.fromTo(targetElementLines3, { 273 xPercent: -110, 274 rotate: 0.001 275 }, { 276 xPercent: 0, 277 rotate: 0.001, 278 ease: "primary-ease", 279 duration: durationDefault, 280 stagger: staggerDefault 281 }, -0.2); 282 } 283 284 let fadeOffset3; 285 if (targetElementLines3.length) { 286 fadeOffset3 = "> -1.16"; 287 } else { 288 fadeOffset3 = "0.2"; 289 } 290 291 292 293 294 }); 295 } 296} 297 298/** 299* Scrolltrigger Animations Desktop + Mobile 300*/ 301if(document.querySelector('.styled-media')) { 302 $('.styled-media').each(function () { 303 let triggerElement = $(this); 304 let targetElementFigureInner = $(this).find('.figure-inner'); 305 let targetElementReveal = $(this).find('.figure-reveal'); 306 307 let tl = gsap.timeline({ 308 scrollTrigger: { 309 trigger: triggerElement, 310 start: "0% 90%", 311 end: "100% 0%", 312 toggleActions: "play none none reset" 313 } 314 }); 315 316 if(targetElementReveal.length) { 317 tl.fromTo(targetElementReveal, { 318 scaleY: 1, 319 rotate: 0.001 320 },{ 321 scaleY: 0, 322 rotate: 0.001, 323 ease: "primary-ease", 324 duration: durationDefault 325 }, 0); 326 } 327 328 if(targetElementFigureInner.length) { 329 tl.fromTo(targetElementFigureInner, { 330 scale: 1.5, 331 rotate: 0.001 332 },{ 333 scale: 1, 334 rotate: 0.001, 335 ease: "primary-ease", 336 duration: durationDefault 337 }, 0); 338 } 339 }); 340}
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.