1$(document).ready(function (e){ 2 let fullHash = window.location.hash 3 const hashClass = fullHash.replace(/#/g, "") 4 5 function activateContactFormByTrigger($trigger) { 6 if (!$trigger || !$trigger.length) { 7 return; 8 } 9 10 const target = $trigger.data('target'); 11 if (!target) { 12 return; 13 } 14 15 $('.contact-form-trigger.active').removeClass('active'); 16 $trigger.addClass('active'); 17 18 $('.contact-forms .contact-form.active').removeClass('active').hide(); 19 const $targetForm = $('#' + target); 20 if ($targetForm.length) { 21 $targetForm.addClass('active').show(); 22 } 23 } 24 25 function scrollToContactFormBlock() { 26 const $contactFormBlock = $('#contactFormBlock'); 27 if (!$contactFormBlock.length) { 28 return; 29 } 30 31 const offset = 100; 32 $('html, body').animate({ 33 scrollTop: $contactFormBlock.offset().top - offset, 34 }, 400); 35 } 36 37 if(fullHash && /^[a-zA-Z0-9_-]+$/.test(hashClass) && $('.' + hashClass).length){ 38 const $hashTrigger = $(`.contact-hash-event#${hashClass}, .contact-hash-event.${hashClass}`).first(); 39 activateContactFormByTrigger($hashTrigger); 40 scrollToContactFormBlock(); 41 window.setTimeout(scrollToContactFormBlock, 250); 42 } 43 else{ 44 //$('.contact-hash-event').first().click(); 45 } 46 47 $('.contact-hash-event').on('click', function () { 48 const hashValue = $(this).attr('id'); 49 if (!hashValue) { 50 return; 51 } 52 53 if (window.history && typeof window.history.replaceState === 'function') { 54 window.history.replaceState( 55 null, 56 '', 57 `${window.location.pathname}${window.location.search}#${hashValue}` 58 ); 59 } 60 }); 61 62});
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.