jQuery(function($) { function closeAllOffCanvas(exceptID = null) { let anyOpen = false; // Track if another Off-Canvas remains open $(".e-off-canvas").each(function() { let canvasID = $(this).attr("id"); if (!exceptID || canvasID !== exceptID) { $(this).removeClass("e-off-canvas-visible") .addClass("e-off-canvas-hidden") .attr("aria-hidden", "true") .css({ "z-index": "10", "visibility": "hidden", "opacity": "0" }); // Full removal delay set to 0ms setTimeout(() => { if ($(this).attr("aria-hidden") === "true") { $(this).css("display", "none"); } }, 0); } else { anyOpen = true; // At least one Off-Canvas is still open } }); } function openOffCanvas(targetID) { let targetCanvas = $(targetID); if (targetCanvas.length) { // Close all others EXCEPT the one we're opening closeAllOffCanvas(targetID); // Open immediately with delay set to 0ms setTimeout(() => { targetCanvas.removeClass("e-off-canvas-hidden") .addClass("e-off-canvas-visible") .attr("aria-hidden", "false") .css({ "z-index": "9999", "visibility": "visible", "opacity": "1", "display": "block" }); // Ensure the White Background Stays Visible $("body").addClass("off-canvas-active"); // Force repaint after opening forceRepaint(); }, 0); } } // Decode Base64 function decodeBase64(str) { try { return atob(str); } catch (e) { return null; } } // Handle Elementor Off-Canvas OPEN clicks $(document).on('click', '[href*="elementor-action%3Aaction%3Doff_canvas%3Aopen"]', function(event) { event.preventDefault(); let href = decodeURIComponent($(this).attr("href")); let base64Match = href.match(/settings=([^&]+)/); if (base64Match) { let decodedSettings = decodeBase64(base64Match[1]); try { let settingsObj = JSON.parse(decodedSettings); if (settingsObj.id) { let offCanvasID = "#off-canvas-" + settingsObj.id; openOffCanvas(offCanvasID); } } catch (e) {} } }); // Handle Elementor Off-Canvas CLOSE clicks $(document).on('click', '[href*="elementor-action%3Aaction%3Doff_canvas%3Aclose"]', function(event) { event.preventDefault(); closeAllOffCanvas(); }); // Ensure all Off-Canvas elements start hidden (ONLY if NOT in Elementor Editor) function initializeOffCanvasVisibility() { // Check if the body does NOT have the Elementor edit mode class if (!$('body').hasClass('elementor-element-edit-mode')) { $(".e-off-canvas").each(function() { $(this).attr("aria-hidden", "true").css({ "z-index": "10", "visibility": "hidden", "opacity": "0", "display": "none" }); }); } } // Call the initialization function $(window).on('load', initializeOffCanvasVisibility); // Utility function to force repaint function forceRepaint() { if ($('body').length) { $('body')[0].style.display = 'none'; $('body')[0].offsetHeight; $('body')[0].style.display = ''; } } });

Meet our experts @ NextGen Manufacturing Summit Africa 2025

From September 29 – October 1 in Benguerir, Morocco, the NextGen Manufacturing Summit Africa will bring together industry leaders, innovators and experts to explore Industry 4.0, smart manufacturing and skills development for the factories of tomorrow. We are proud that our Managing Director Florian Blischke, Division Manager Software Mustapha Larhrouch, and Sales Manager Zakaria El […]

EN