1function isMobile() { 2 return window.innerWidth < 768; 3} 4var processResize = debounce(processScenes); 5window.addEventListener("resize", (event) => { 6 //processResize(); 7 8}); 9 10var width = jQuery(window).width(); 11jQuery(window).on('resize', function() { 12 if (jQuery(this).width() !== width) { 13 width = jQuery(this).width(); 14 processResize(); 15 } 16}); 17 18function processScenes() { 19 if (!window['SMscenes']) 20 return; 21 window['SMcontroller'].destroy(true); 22 setTimeout 23 window['SMcontroller'] = new ScrollMagic.Controller({}); 24 for (var i = 0; i < window['SMscenes'].length; i++) { 25 console.log('init'); 26 (window['SMscenes'][i])(); 27 } 28} 29 30function debounce(func, timeout = 100) { 31 let timer; 32 return (...args) => { 33 clearTimeout(timer); 34 timer = setTimeout(() => { func.apply(this, args); }, timeout); 35 }; 36} 37jQuery(function ($) { 38 window['SMcontroller'] = window['SMcontroller'] ? window['SMcontroller'] : new ScrollMagic.Controller({}); 39 window['SMscenes'] = window['SMscenes'] ? window['SMscenes'] : []; 40 window['SMscenes'].push(stayonplace); 41 stayonplace(); 42 addTitle(); 43 init(); 44 45 function addTitle() { 46 $('.wp-block-heading s').each(function(){ 47 text = $(this).text(); 48 $(this).attr('title', text); 49 }) 50 } 51 52 function stayonplace() { 53 if (isMobile()) 54 return; 55 const sop = $('.stayonplace'); 56 for (var i = 0; i < sop.length; i++) { 57 let wrapper = $(sop[i]).parent().parent().parent(); 58 if (!wrapper.hasClass('sop-wrapper')) { 59 wrapper = $(sop[i]).parent().parent().wrap('<div class="sop-wrapper"></div>').parent(); 60 const next = $(sop[i]).next(); 61 next.css('z-index', 100); 62 wrapper.after(next); 63 } 64 65 var s = new ScrollMagic.Scene({ 66 triggerElement: wrapper[0], 67 duration: $(sop[i]).height(),// * 0.75, 68 triggerHook: 0, 69 offset: -160 70 }) 71 s.setPin(wrapper[0], {pushFollowers: false}); 72 s.addTo(window['SMcontroller']); 73 } 74 75 } 76 77 jQuery('a[href*="#"]').click(function(e){ 78 var hash = this.hash; 79 if(jQuery(hash).length){ 80 e.preventDefault(); 81 jQuery('html, body').animate({ 82 scrollTop: jQuery(hash).offset().top - 100 83 }, 800, function () { 84 }); 85 } 86 }) 87 88 // 89 90 window['SMcontroller'] = window['SMcontroller'] ? window['SMcontroller'] : new ScrollMagic.Controller({}); 91 window['SMscenes'] = window['SMscenes'] ? window['SMscenes'] : []; 92 window['SMscenes'].push(init); 93 94 jQuery('#taking-off-next .wp-block-cover__image-background').each(function(){ 95 if(window.width < 768){ 96 $(this).height(jQuery('.taking-off-next').outerHeight()); 97 } 98 }) 99 100 function init() { 101 if($("html").is('[dir="rtl"]')){ 102 $rtl = true; 103 }else{ 104 $rtl = false; 105 } 106 emTitle = jQuery('.wp-block-heading[id*="h-"]:first'); 107 if(emTitle.length) { 108 width = emTitle.find('span').width(); 109 emTitle.css('max-width', width); 110 111 } 112 if(jQuery('#taking-off-next').length) { 113 jQuery('#taking-off-next .wp-block-image img').each(function(){ 114 $(this).parent().append('<div class="caption">'+$(this).attr('alt')+'</div>'); 115 }) 116 jQuery('#taking-off-next .wp-block-cover__image-background').each(function(){ 117 $(this).parent().append('<div class="caption">'+$(this).attr('alt')+'</div>'); 118 }) 119 120 if (isMobile()) 121 return; 122 123 //Emerging 124 var controller = window['SMcontroller']; 125 126 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "110%", triggerHook: '0.09'}) 127 .setPin("#emerging") 128 .addTo(controller); 129 var tween = TweenMax.staggerFromTo('.animate-1', 1,{ width: '250%'},{width: '100%'},0.4); 130 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "10%", triggerHook: 0}) 131 .setTween(tween) 132 //.offset(100) 133 .addTo(controller); 134 135 var tween8 = TweenMax.staggerFromTo('#taking-off', 1,{ marginTop: '0'},{marginTop: '-100vh'},0.4); 136 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "10%", triggerHook: 0}) 137 .setTween(tween8) 138 .offset(100) 139 .addTo(controller); 140 141 if($rtl){ 142 var textAlign = TweenMax.staggerFromTo('.animate-1 p', 1,{ textAlign: 'center'},{textAlign: 'left'},0.4); 143 var marginRight = TweenMax.staggerFromTo('.animate-1 .wp-block-heading', 1,{ marginLeft: 'auto'},{marginLeft: '0'},0.4); 144 }else{ 145 var textAlign = TweenMax.staggerFromTo('.animate-1 p', 1,{ textAlign: 'center'},{textAlign: 'right'},0.4); 146 var marginRight = TweenMax.staggerFromTo('.animate-1 .wp-block-heading', 1,{ marginRight: 'auto'},{marginRight: '0'},0.4); 147 } 148 149 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "20%", triggerHook: 0}) 150 .setTween(textAlign) 151 .offset(200) 152 .addTo(controller); 153 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "20%", triggerHook: 0}) 154 .setTween(marginRight) 155 .offset(200) 156 .addTo(controller); 157 158 if($rtl){ 159 var tween1 = TweenMax.staggerFromTo(".animate-2", 0.5,{ transform: 'translateX(-100vw)'},{transform: 'translateX(0)'},0.4); 160 }else{ 161 var tween1 = TweenMax.staggerFromTo(".animate-2", 0.5,{ transform: 'translateX(100vw)'},{transform: 'translateX(0)'},0.4); 162 } 163 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "20%", triggerHook: 0}) 164 .setTween(tween1) 165 .offset(300) 166 .addTo(controller); 167 168 var tween3 = TweenMax.staggerFromTo(".animate-3", 0.5,{ transform: 'translateY(100vh)'},{transform: 'translateY(0)'},0.4); 169 var scene = new ScrollMagic.Scene({triggerElement: "#emerging", duration: "5%", triggerHook: 0}) 170 .setTween(tween3) 171 .offset(300) 172 .addTo(controller); 173 174 175 // Taking off NExt 176 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "400%", triggerHook: '0.09'})
177 .setPin("#taking-off-next") 178 .addTo(controller); 179 180 181 var tween4 = TweenMax.staggerFromTo('.animate-4', 1,{ transform: 'translateY(80vh)'},{transform: 'translateY(0)'},0.4); 182 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "10%", triggerHook: 0}) 183 .setTween(tween4) 184 .addTo(controller); 185 186 var tween5 = TweenMax.staggerFromTo('#taking-off-next > img.wp-block-cover__image-background, #taking-off-next > .caption', 1,{ opacity: '1'},{opacity: '0'},0.4); 187 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "10%", triggerHook: 0}) 188 .setTween(tween5) 189 .offset(900) 190 .addTo(controller); 191 192 var tweenbG = TweenMax.staggerTo('#taking-off-next > .wp-block-cover__background', 1,{ opacity: '1'},0.4); 193 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "10%", triggerHook: 0}) 194 .setTween(tweenbG) 195 .offset(900) 196 .addTo(controller); 197 198 199 200 // & 201 var tween6 = TweenMax.staggerFromTo('.animate-6, .animate-5', 1,{ opacity: '1'},{opacity: '0'},0.4); 202 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "10%", triggerHook: 0}) 203 .setTween(tween6) 204 .offset(900) 205 .addTo(controller); 206 207 208 var textHolder = TweenMax.staggerFromTo('#taking-off .text-holder', 1,{ opacity: '0'},{opacity: '1'},0.4); 209 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 210 .setTween(textHolder) 211 .offset(1000) 212 .addTo(controller); 213
214 /////////////////taking-off image block 215 if($rtl){ 216 var tween10 = TweenMax.staggerFromTo('#taking-off .animate-7', 1,{ transform: 'translateX(-50vw)'},{transform: 'translateX(0)'},0.4); 217 }else{ 218 var tween10 = TweenMax.staggerFromTo('#taking-off .animate-7', 1,{ transform: 'translateX(50vw)'},{transform: 'translateX(0)'},0.4); 219 } 220 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "2%", triggerHook: 0}) 221 .setTween(tween10) 222 .offset(1000) 223 .addTo(controller); 224 225 226 /////////////////taking-off provide show 227 var tween15 = TweenMax.staggerFromTo('#taking-off .provide', 1,{ transform: 'translateY(70vh)'},{transform: 'translateY(0)'},0.4) 228 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 229 .setTween(tween15) 230 .offset(1000) 231 .addTo(controller); 232 233 /////////////////taking-off provide block hide 234 var tween16 = TweenMax.staggerTo('#taking-off .provide', 1,{ opacity: '0'},0.4) 235 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 236 .setTween(tween16) 237 .offset(3000) 238 .addTo(controller); 239 240
241 /////////////////taking-off image block hide 242 if($rtl){ 243 var tween11 = TweenMax.staggerTo('#taking-off .animate-7', 1,{ transform: 'translateX(-50vw)'},0.4) 244 }else{ 245 var tween11 = TweenMax.staggerTo('#taking-off .animate-7', 1,{ transform: 'translateX(50vw)'},0.4) 246 } 247 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 248 .setTween(tween11) 249 .offset(3000) 250 .addTo(controller); 251 252 /////////////////taking-off image block hide 253 var tween11 = TweenMax.staggerTo('#taking-off .text-holder', 1,{ opacity: '0'},0.4) 254 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 255 .setTween(tween11) 256 .offset(3000) 257 .addTo(controller); 258 259 ////////////// 260 // Next level 261 ///////////// 262 /////////////////next-level 263 var tween12 = TweenMax.staggerFromTo('#next-level', 1,{ marginTop: '0'},{marginTop: '-100vh'},0.4) 264 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 265 .setTween(tween12) 266 .offset(1300) 267 .addTo(controller); 268
269 /////////////////next-level show 270 var tween13 = TweenMax.staggerFromTo('#next-level .text-holder', 1,{ opacity: '0'}, {opacity:'1'},0.4); 271 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 272 .setTween(tween13) 273 .offset(3000) 274 .addTo(controller); 275 276 /////////////////next-level image show 277 if($rtl){ 278 var tween14 = TweenMax.staggerFromTo('.animate-8', 1,{ transform: 'translateX(50vw)'},{transform: 'translateX(0)'},0.4); 279 }else{ 280 var tween14 = TweenMax.staggerFromTo('.animate-8', 1,{ transform: 'translateX(-50vw)'},{transform: 'translateX(0)'},0.4); 281 } 282 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 283 .setTween(tween14) 284 .offset(3000) 285 .addTo(controller); 286 287 if($rtl){ 288 var tween20 = TweenMax.staggerFromTo('#next-level .provide', 1,{ transform: 'translateX(60vw)'},{transform: 'translateX(0)'},0.4); 289 }else{ 290 var tween20 = TweenMax.staggerFromTo('#next-level .provide', 1,{ transform: 'translateX(-60vw)'},{transform: 'translateX(0)'},0.4); 291 } 292 293 294 var scene = new ScrollMagic.Scene({triggerElement: "#taking-off-next", duration: "5%", triggerHook: 0}) 295 .setTween(tween20) 296 .offset(3200) 297 .addTo(controller); 298 299 } 300 } 301 302});
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.