var targetElements = productDescription.querySelectorAll('p strong'); // Loop through each matching element targetElements.forEach(function (element) { // Check if the element is contained within a
tag if (element.parentNode.nodeName === 'P') { // Check if the text of the tag starts with "Note:" if (!element.textContent.startsWith('Note:')) { // Create a new tag to the new tag with the new Fields with an asterisk (*) are required. Fields with an asterisk (*) are required. or
element based on the text content var heading = document.createElement(element.textContent.startsWith('Features:') ? 'h3' : 'h2'); // Add the class "product_desc_h2" to the new
or
element heading.classList.add('product_desc_h2'); // Copy the contents of the
or
element heading.innerHTML = element.parentNode.innerHTML; // Replace the
or
element element.parentNode.parentNode.replaceChild(heading, element.parentNode); } } }); } // Call the function to run the script updateDescription(); }); // ENF OF - Zenyth Fix - Product Item Descriptions // Zenyth - Slider gallery Fix // Fixes the video on the native BC slider $(document).ready(function () { if ($(".productView-img-container a img").length) { const observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { if (mutation.attributeName === "alt") { const target = $(mutation.target); const parentAnchor = target.closest('a'); const altText = target.attr("alt"); if (altText && altText.includes("youtube")) { const videoId = altText.split("v=")[1]; const iframe = ``; target.nextAll('.znt-dynamic-iframe').remove(); target.after(iframe); // Change the role of the parent and set aria-hidden on the image parentAnchor.attr('role', 'none'); parentAnchor.attr('tabindex', '-1'); target.attr('aria-hidden', 'true'); $(".znt-dynamic-iframe").attr('title', 'Youtube Video slide'); } else { target.nextAll('.znt-dynamic-iframe').remove(); // Reset the role of the parent and remove aria-hidden from the image parentAnchor.attr('role', 'button'); parentAnchor.removeAttr('tabindex'); target.removeAttr('aria-hidden'); } } }); }); $(".productView-img-container a img").each(function () { observer.observe(this, { attributes: true }); }); } }); $(document).ready(function () { if ($('.productView-thumbnail a img').length > 0) { $('.productView-thumbnail a img').each(function () { const altText = $(this).attr('alt'); if (altText && altText.includes('youtube')) { const youtubeIDMatch = altText.match(/v=([\w\-]+)/); if (youtubeIDMatch && youtubeIDMatch[1]) { const youtubeID = youtubeIDMatch[1]; const newSrc = `http://img.youtube.com/vi/${youtubeID}/default.jpg`; $(this).attr('src', newSrc); $('.productView-thumbnail a img').removeAttr('srcset'); } } }); } }); $(document).ready(function () { if ($('#dialogTrigger').length) { $('#dialogTrigger').click(function (event) { event.preventDefault(); const hrefValue = $(this).attr('href'); const altValue = $('#dialogTrigger img').attr('alt'); setTimeout(() => { $('.modalProduct .modalContent img').attr('src', hrefValue).attr('alt', altValue); }, 500); }); } }); // END OF - Zenyth - Slider gallery Fix // Zenyth - Transcript $(document).ready(function () { // Check if .videoGallery-main exists in the DOM var videoGalleryMain = $('.videoGallery-main'); if (videoGalleryMain.length) { // Create the container div var containerDiv = $('').addClass('znt-transcript-container'); // Create the button var button = $('') .addClass('znt-transcript-toggle') .attr('aria-expanded', 'false') .text('Toggle Transcription'); // Replace with your button text // Create the div for transcription content var transcriptionDiv = $('') .addClass('znt-transcript') .css('display', 'none'); // Initially hidden // Create an iframe var iframe = $('') .attr('src', 'https://fastoolnow.com/transcript-reelcraft-reels-tested-to-be-ready-when-you-are/') .attr('width', '100%') .attr('height', '400px'); // Adjust the dimensions as needed // Append the iframe to the transcription div transcriptionDiv.append(iframe); // Append button and transcriptionDiv to containerDiv containerDiv.append(button).append(transcriptionDiv); // Insert the container right after .videoGallery-main videoGalleryMain.after(containerDiv); // Event listener for the button for click, Enter, and Space key press button.on('click keydown', function (e) { if (e.type === 'click' || e.key === 'Enter' || e.key === ' ') { e.preventDefault(); // Prevent the default action for keypress var expanded = $(this).attr('aria-expanded') === 'true'; $(this).attr('aria-expanded', !expanded); transcriptionDiv.css('display', expanded ? 'none' : 'block'); } }); } }); // END OF - Zenyth - Transcript// Zenyth - Checkout Scripts// Email subscription - starting with email$(document).ready(function () { function handleElementAdded() { if ($('#checkout-customer-guest').length) { if ($('#checkout-customer-guest > p').length === 0) { $('#checkout-customer-guest').prepend('
Fields with an asterisk (*) are required.
'); } $('#firstName').attr('aria-required', 'true'); if ($('#firstName + label .asterisk').length === 0) { $('#firstName + label').append('*'); } $('#lastName').attr('aria-required', 'true'); if ($('#lastName + label .asterisk').length === 0) { $('#lastName + label').append('*'); } $('#email').attr('aria-required', 'true'); if ($('#email + label .asterisk').length === 0) { $('#email + label').append('*'); } $('#password').attr('aria-required', 'true'); if ($('#password + label .asterisk').length === 0) { $('#password + label').append('*'); } $(document).off('DOMNodeInserted', handleElementAdded); } } handleElementAdded(); $(document).on('DOMNodeInserted', handleElementAdded);});// Shipping Address$(document).ready(function () { function handleElementAdded() { if ($('#checkoutBillingAddress .checkout-address').length) { if ($('#checkoutBillingAddress > p').length === 0) { $('#checkoutBillingAddress').prepend('Fields with an asterisk (*) are required.
'); } $('#firstNameInput').attr('aria-required', 'true'); if ($('#firstNameInput + label .asterisk').length === 0) { $('#firstNameInput + label').append('*'); } $('#lastNameInput').attr('aria-required', 'true'); if ($('#lastNameInput + label .asterisk').length === 0) { $('#lastNameInput + label').append('*'); } $('#phoneInput').attr('aria-required', 'true'); if ($('#phoneInput + label .asterisk').length === 0) { $('#phoneInput + label').append('*'); } $('#addressLine1Input').attr('aria-required', 'true'); if ($('#addressLine1Input + label .asterisk').length === 0) { $('#addressLine1Input + label').append('*'); } $('#addressLine1Input').attr('aria-required', 'true'); if ($('#addressLine1Input + label .asterisk').length === 0) { $('#addressLine1Input + label').append('*'); } $('#cityInput').attr('aria-required', 'true'); if ($('#cityInput + label .asterisk').length === 0) { $('#cityInput + label').append('*'); } $('#postCodeInput').attr('aria-required', 'true'); if ($('#postCodeInput + label .asterisk').length === 0) { $('#postCodeInput + label').append('*'); } $(document).off('DOMNodeInserted', handleElementAdded); } } handleElementAdded(); $(document).on('DOMNodeInserted', handleElementAdded);});$(document).ready(function () { function handleElementAdded() { if ($('.form-legend-container a').length) { setTimeout(function () { $('.form-legend-container a').attr({ 'tabindex': '0', 'role': 'button', 'href': 'javascript:void(0)' }); $(document).off('DOMNodeInserted', handleElementAdded); }, 3000); } } $(document).on('DOMNodeInserted', handleElementAdded);});$(document).ready(function () { $(document).on('DOMNodeInserted', function (event) { if ($(event.target).is('.form-field-errors')) { // All error messages added $('.form-field-errors label').removeAttr('aria-live for'); $('.form-field-errors, .form-field-errors li').attr('role', 'presentation'); // Aria describedby for the each input $('#email').attr('aria-describedby', 'email-field-error-message'); $('#firstNameInput').attr('aria-describedby', 'firstNameInput-field-error-message'); $('#lastNameInput').attr('aria-describedby', 'lastNameInput-field-error-message'); $('#phoneInput').attr('aria-describedby', 'phoneInput-field-error-message'); $('#addressLine1Input').attr('aria-describedby', 'shippingAddress.address1-field-error-message'); $('#cityInput').attr('aria-describedby', 'cityInput-field-error-message'); $('#postCodeInput').attr('aria-describedby', 'postCodeInput-field-error-message'); $('#password').attr('aria-describedby', 'password-field-error-message'); $('#firstName').attr('aria-describedby', 'firstName-field-error-message'); $('#lastName').attr('aria-describedby', 'lastName-field-error-message'); } });});// Summary$(document).ready(function () { setTimeout(function () { $('h3.cart-title').each(function () { var $h2 = $('', { class: 'cart-title', html: $(this).html() }); $(this).replaceWith($h2); }); }, 1000);});// END OF - Zenyth - Checkout Scripts // Zenyth Fix - EZ Lookup page// Function to change heading levels$(document).ready(function () { // Check if the element exists const targetElement = $("#search-app > div > h1"); if (targetElement.length > 0) { // Element exists, change the tag from h1 to h2 and add the class const newElement = $("").addClass("result-title red-color").html(targetElement.html()); targetElement.replaceWith(newElement); }});// Form fixes$(document).ready(function () { // Function to add a space, asterisk (*), and
element function addAsteriskAndMessage() { const inputElements = $("#search-app form").find("input"); inputElements.each(function () { const inputElement = $(this); const labelFor = inputElement.prev("label").attr("for"); if (labelFor && labelFor === "email") { inputElement.attr("for", "emailTwo").attr("id", "emailTwo").attr("autocomplete", "email"); } // Add a space and asterisk (*) to labels inputElement.prev("label").text(inputElement.prev("label").text() + " "); }); // Insert the
element before the form with style to align text left //$("
Fields with an asterisk (*) are required.
").insertBefore("#search-app > div > div.row.form-div > form"); } // Call the function initially addAsteriskAndMessage();});$(document).ready(function () { // Function to add role="status" to the div with id="result" function addRoleStatusToResultDiv() { const resultDiv = $("#result"); if (resultDiv.length > 0) { resultDiv.attr("role", "status"); } } // Call the function initially addRoleStatusToResultDiv();});// END OF - Zenyth Fix - EZ Lookup page }`); }); // Adds an ID to the file upload hint $('[for="znt-id_06_attachfile"] + [class*="Component__Hint"] p').attr('id', 'znt-id_06_attachfile-hint'); // Adds an aria-describedby to the input file $('#znt-id_06_attachfile').attr('aria-describedby', 'znt-id_06_attachfile-hint'); // Adds aria describedby t the submit button targetting tthe info $('.znt-form-container [class*="ButtonBase"').attr('aria-describedby', 'znt-submit_01'); // END OF - Initial setup based on IDs // Required fields based on the label $('label').each(function () { const labelText = $(this).text().toLowerCase(); const forAttribute = $(this).attr('for'); if (labelText.includes('*') || labelText.includes('required')) { $(`#${forAttribute}`).attr('aria-required', 'true'); } }); // END OF - Required fields based on the label // ARIA Attribute Updates and initial states const updateAriaAttributes = () => { formSelectorZntForm.find('input, select, textarea').each(function () { const field = $(this); // Update aria-required if (field.attr('required')) { field.attr('aria-required', 'true'); } else { $('input:not([aria-required="true"]), select:not([aria-required="true"]), textarea:not([aria-required="true"])').attr('aria-required', 'false'); } // Set aria-invalid to false initially field.attr('aria-invalid', 'false'); }); }; updateAriaAttributes(); $('.znt-form-container').on('DOMNodeInserted', function (e) { const $target = $(e.target); if ($target.is('svg')) { $target.attr('aria-hidden', 'true'); } }); // END OF - ARIA Attribute Updates and initial states // ARIA autocomplete update $('.znt-form-container').find('input, select, textarea').each(function () { let autoCompleteValue = ''; const field = $(this); const labelID = field.attr('id'); const closestLabel = $(`label[for="${labelID}"]`).text().toLowerCase(); const labelWords = closestLabel.replace(/[^a-zA-Z]/g, '').toLowerCase(); if (labelWords.includes('name') && labelWords.includes('first')) { autoCompleteValue = 'given-name'; } else if (labelWords.includes('last') && labelWords.includes('name')) { autoCompleteValue = 'family-name'; } else if (labelWords.includes('email')) { autoCompleteValue = 'email'; } else if (labelWords.includes('company')) { autoCompleteValue = 'organization'; } else if (labelWords.includes('zip') && labelWords.includes('code')) { autoCompleteValue = 'postal-code'; } else if (labelWords.includes('phone')) { autoCompleteValue = 'tel'; } else if (labelWords.includes('full') && labelWords.includes('name')) { autoCompleteValue = 'name'; } else if (labelWords.includes('company')) { autoCompleteValue = 'organization'; } else if (labelWords.includes('state')) { autoCompleteValue = 'address-level1'; } else if (labelWords.includes('street')) { autoCompleteValue = 'address-line1'; } else if (labelWords.includes('nickname')) { autoCompleteValue = 'nickname'; } else if (labelWords.includes('user')) { autoCompleteValue = 'username'; } else if (labelWords.includes('new') && labelWords.includes('password')) { autoCompleteValue = 'new-password'; } else if (labelWords.length === 1 && labelWords[0] === 'password') { autoCompleteValue = 'current-password'; } else if (labelWords.includes('name') && !labelWords.includes('first') && !labelWords.includes('last')) { autoCompleteValue = 'name'; }; if (autoCompleteValue) { field.attr('autocomplete', autoCompleteValue); } }); // END OF - ARIA autocomplete update // Email Validation const isValidEmailZntForm = (email) => { const emailRegex = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/; return emailRegex.test(email); }; // END OF - Email Validation // Focusout Fallback // Some forms has a focusout validation hat can conflict // This functions revalidates quickly on focusout const focusOutFallback = () => { formSelectorZntForm.on('focusout', formFocusoutZntFallbackSelector, function () { setTimeout(() => { checkFieldsZntForm(); }, 10); }); }; focusOutFallback(); // END OF - Focusout Fallback // Error Message const getDescribedById = (label, id) => { return 'znt-' + label.toLowerCase().replace(/[^a-z0-9]+/g, '-') + '-' + id + '-error'; }; const handleErrorMessage = (field, ariaInvalid, closestLabel) => { const describedById = getDescribedById(closestLabel, field.attr('id')); const formControlElement = field.closest(formControlZnt); // Get the parent form control element if (ariaInvalid === 'true') { let errorMsg = closestLabel + ' field is required'; if (field.is('input[type="email"]')) { errorMsg += ' (name@domain.com)'; } if (!$(`#${describedById}`).length) { field.after(`
${errorMsg}
`); field.attr('aria-describedby', describedById); formControlElement.addClass('znt-invalid-control'); // Add the class to the parent form control element } } else { const observerZntForm = new MutationObserver(function (mutationsList, observerZntForm) { for (let mutation of mutationsList) { if (mutation.type === 'attributes' && mutation.attributeName === 'class') { const target = mutation.target; if (target.matches(formControlZnt) && !$(target).hasClass('znt-invalid-control')) { $(target).find('input, textarea, select').removeAttr('aria-describedby'); $(target).find('.znt-error-message').remove(); } } } }); const configZntForm = { attributes: true, attributeFilter: ['class'], subtree: true }; observerZntForm.observe(document.body, configZntForm); // Check if any other fields in the same form control are still invalid const invalidFieldsInControl = formControlElement.find('input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"]'); if (invalidFieldsInControl.length === 0) { formControlElement.removeClass('znt-invalid-control'); // Remove the class from the parent form control element } } }; // END OF - Error Message // Input fields Validation (input, select, textarea) const inputFieldsValidation = () => { $(document).ready(function () { if ($('form').length > 0) { $(formSelectorZntForm).on('input focusin focusout', 'input, textarea', function (event) { const field = $(this); // Skip validation for fields with aria-required="false" const ariaRequired = field.attr('aria-required') === 'true'; if (!ariaRequired) { return; } let ariaInvalid = 'false'; const value = field.val().trim(); // Identify the closest label based on your HTML structure const closestLabel = field.closest(formControlZnt).find('label[for="' + field.attr('id') + '"]').text().replace(/[^a-zA-Z0-9 ]/g, ""); // On focusin, initialize hasInteracted to false if (event.type === 'focusin') { field.data('hasInteracted', false); } // On input, set hasInteracted to true and validate if (event.type === 'input') { field.data('hasInteracted', true); if (field.is('input[type="email"]')) { ariaInvalid = isValidEmailZntForm(value) ? 'false' : 'true'; } else { ariaInvalid = value === '' ? 'true' : 'false'; } field.attr('aria-invalid', ariaInvalid); handleErrorMessage(field, ariaInvalid, closestLabel); } }); } }); }; inputFieldsValidation(); // END OF - Input fields Validation (input, select, textarea) // Dynamic Button state const dynamicButtonState = () => { formSelectorZntForm.each(function () { const form = $(this); let disableButton = false; form.find('input, select, textarea').each(function () { const field = $(this); if (field.attr('aria-required') === 'true' && field.val().trim() === '') { disableButton = true; return false; } if (field.attr('aria-invalid') === 'true') { disableButton = true; return false; } }); const submitBtn = form.find(submitSelectorZntForm); if (disableButton) { submitBtn.attr('disabled', 'disabled'); submitBtn.attr('aria-disabled', 'true'); } else { submitBtn.removeAttr('disabled'); submitBtn.removeAttr('aria-disabled'); } }); }; formSelectorZntForm.on('input focusout change', 'input, select, textarea', function () { dynamicButtonState(); }); dynamicButtonState(); const observerZntBtn = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { if (mutation.type === 'attributes') { const $target = $(mutation.target); if (mutation.attributeName === 'disabled' && !$target.is(':disabled') && $target.attr('aria-disabled') === 'true') { $target.attr('disabled', true); } } }); }); observerZntBtn.observe($('.znt-form-container button')[0], { attributes: true }); // END OF - Dynamic Button state // Form instructions if (formSelectorZntForm.length > 0) { const formInfoElement_01 = $('
').text(formInfoZnt_01); const formInfoElement_02 = $('
').text(formInfoZnt_02); formInfoElement_01.insertBefore(formSelectorZntForm); formInfoElement_02.insertBefore(formSelectorZntForm); } // END OF - Form instructions } }, 3000); }); $(document).ready(function () { const observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { $(mutation.addedNodes).each(function () { if ($(this).is('[class*="SubmitMessage__Container"]')) { const currentTitle = $('title').text(); $('title').text(currentTitle + ' - Success'); $('#ztb-head-title').remove(); $('.znt-form-info').remove(); $('[class*="SubmitMessage__Text"]').each(function () { const attributes = $(this).prop("attributes"); const content = $(this).html(); const newElement = $("
"); $.each(attributes, function () { newElement.attr(this.name, this.value); }); newElement.html(content); $(this).replaceWith(newElement); }); $('[class*="SubmitMessage__Container"]').attr('role', 'status'); $('[class*="SubmitMessage__Text"]').css('display', 'none'); setTimeout(function () { $('[class*="SubmitMessage__Text"]').css('display', 'block'); }, 500); } }); }); }); observer.observe(document.body, { childList: true, subtree: true, }); }); $(document).ready(function () { if ($('.znt-form-container').length > 0) { const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (mutation.addedNodes) { mutation.addedNodes.forEach((node) => { if ($(node).is('[class*="Component__FileItem"]')) { setupAccessibility(); const dropArea = $('[class*="Component__DropArea"]'); const zntDiv = $('
').addClass('znt-live').attr('role', 'status'); dropArea.after(zntDiv); setTimeout(() => { const pElement = $('
').text('File selected'); $('.znt-live').append(pElement); setTimeout(() => { $('.znt-live').remove(); }, 2000); }, 1000); } }); } if (mutation.removedNodes) { mutation.removedNodes.forEach((node) => { if ($(node).is('[class*="Component__FileItem"]')) { setTimeout(() => { if ($('[class*="Component__FileItem"] [class*="Icon__IconContainer"]').length) { $('[class*="Component__FileItem"] [class*="Icon__IconContainer"]').focus(); } else if ($('#znt-id_06_attachfile').length) { $('#znt-id_06_attachfile').focus(); } }, 1000); const dropArea = $('[class*="Component__DropArea"]'); const zntDiv = $('
').addClass('znt-live').attr('role', 'status'); dropArea.after(zntDiv); setTimeout(() => { const pElement = $('
').text('File removed'); $('.znt-live').append(pElement); setTimeout(() => { $('.znt-live').remove(); }, 2000); }, 1000); } }); } }); }); function setupAccessibility() { $('[class*="Component__FileItem"] [class*="Icon__IconContainer"] svg').attr('aria-hidden', 'true'); $('[class*="Component__FileItem"] [class*="Component__FileName"] [class*="Icon__IconContainer"]').each(function () { const siblingContent = $(this).siblings('[class*="Component__Name"]').text(); $(this).attr({ 'role': 'button', 'tabindex': '0', 'aria-label': `Remove File ${siblingContent}` }).on('keydown', function (e) { if (e.keyCode === 13 || e.keyCode === 32) { // Enter or Space $(this).click(); } }); }); } setupAccessibility(); observer.observe(document.body, { childList: true, subtree: true, }); } }); // END OF - Zenyth - Contact form scripts // Checkout part (rest on ZenythScripts1 $(document).ready(function () { function handleElementAdded() { if ($('#checkoutShippingAddress .checkout-address').length) { if ($('#checkoutShippingAddress > p').length === 0) { $('#checkoutShippingAddress').prepend('
Fields with an asterisk (*) are required.
'); } $('#firstNameInput').attr('aria-required', 'true'); if ($('#firstNameInput + label .asterisk').length === 0) { $('#firstNameInput + label').append('*'); } $('#lastNameInput').attr('aria-required', 'true'); if ($('#lastNameInput + label .asterisk').length === 0) { $('#lastNameInput + label').append('*'); } $('#phoneInput').attr('aria-required', 'true'); if ($('#phoneInput + label .asterisk').length === 0) { $('#phoneInput + label').append('*'); } $('#addressLine1Input').attr('aria-required', 'true'); if ($('#addressLine1Input + label .asterisk').length === 0) { $('#addressLine1Input + label').append('*'); } $('#addressLine1Input').attr('aria-required', 'true'); if ($('#addressLine1Input + label .asterisk').length === 0) { $('#addressLine1Input + label').append('*'); } $('#cityInput').attr('aria-required', 'true'); if ($('#cityInput + label .asterisk').length === 0) { $('#cityInput + label').append('*'); } $('#postCodeInput').attr('aria-required', 'true'); if ($('#postCodeInput + label .asterisk').length === 0) { $('#postCodeInput + label').append('*'); } $(document).off('DOMNodeInserted', handleElementAdded); } } handleElementAdded(); $(document).on('DOMNodeInserted', handleElementAdded); }); // Mobile menu - New pattern $(document).ready(function() { // Target the header where the buttons are var $header = $('header.header'); // Dialog attributes $('header.header button.znt-closed-menu').attr('aria-haspopup', 'dialog'); // Observer callback function to remove attributes var removeAttributes = function(mutationsList) { mutationsList.forEach(function(mutation) { if (mutation.type === 'attributes') { var $target = $(mutation.target); if ($target.is('header.header button.znt-closed-menu, header.header button.mobileMenu-toggle')) { $target.removeAttr('aria-controls') .removeAttr('aria-expanded'); } } }); }; // MutationObserver configuration var config = { attributes: true, attributeFilter: ['aria-controls', 'aria-expanded'], subtree: true }; // Create a new MutationObserver instance var observer = new MutationObserver(removeAttributes); // Start observing observer.observe($header[0], config); }); // Product fix $(document).ready(function() { // Check if .tab-Accessories exists in the DOM if ($('.tab-Accessories').length > 0) { // Function to execute when mutations are observed var callback = function(mutationsList, observer) { for(var mutation of mutationsList) { if (mutation.type === 'childList') { mutation.addedNodes.forEach(node => { // Check if the added node is a DIV and has the class 'OptAcsPro-Box' if (node.nodeType === 1 && node.tagName === 'DIV' && $(node).hasClass('OptAcsPro-Box')) { // Remove the tabindex attribute $(node).removeAttr('tabindex'); } }); mutation.removedNodes.forEach(node => { // Check if the removed node is the .tab-Accessories element if (node.nodeType === 1 && $(node).hasClass('tab-Accessories')) { // Disconnect the observer if .tab-Accessories is removed observer.disconnect(); } }); } } }; // Create an observer instance linked to the callback function var observer = new MutationObserver(callback); // Options for the observer (which mutations to observe) var config = { attributes: false, childList: true, subtree: true }; // Start observing the document body for DOM mutations observer.observe(document.body, config); } }); $(document).ready(function() { var targetNode = document.body; // Adjust if there's a more specific parent element var config = { attributes: false, childList: true, subtree: true }; var callback = function(mutationsList, observer) { var foundAndRemovedTabindex = false; $('.znt-carousel_01 .slick-arrow').each(function() { if ($(this).attr('tabindex')) { $(this).removeAttr('tabindex'); foundAndRemovedTabindex = true; } }); // If tabindex attributes were found and removed, and you no longer expect new elements if (foundAndRemovedTabindex) { // Optionally, add a check here if you need to ensure some condition is met // before disconnecting, such as a certain number of elements being processed. observer.disconnect(); } }; var observer = new MutationObserver(callback); observer.observe(targetNode, config); }); // Removes the aria-required from the submit button $(document).ready(function() { var intervalId = setInterval(function() { var submitButton = $('input[type="submit"].button.button--primary'); if (submitButton.attr('aria-required')) { submitButton.removeAttr('aria-required'); clearInterval(intervalId); } }, 1000); }); // Messages for fix let intervalIdMod2313 = setInterval(function() { $('.form-actions [type="reset"]').removeAttr('aria-required');}, 1000);setTimeout(function() { clearInterval(intervalIdMod2313);}, 10000); }