/* Default Off-Canvas (Hidden) */ .e-off-canvas { z-index: 100; display: none; visibility: hidden; opacity: 0; transition: visibility 0s linear 0.2s, opacity 0.2s linear; } /* Show Off-Canvas */ .e-off-canvas-visible { display: block !important; visibility: visible !important; opacity: 1 !important; z-index: 9999 !important; } /* Hide Off-Canvas */ .e-off-canvas-hidden { visibility: hidden !important; opacity: 0 !important; z-index: 10 !important; } /* White Background Behind Off-Canvas (Using ::before on Body) */ body::before { content: ""; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(255, 255, 255, 1); /* Solid White */ opacity: 0; visibility: hidden; z-index: 9998; /* Just behind Off-Canvas */ transition: opacity 0.2s linear, visibility 0s linear 0.2s; } /* When an Off-Canvas is Open, Show the Background */ body.off-canvas-active::before { opacity: 1; visibility: visible; transition: opacity 0.2s linear; } jQuery(function($) { // Function to force repaint/reflow function forceRepaint() { document.body.style.display = 'none'; document.body.offsetHeight; // Force reflow document.body.style.display = 'block'; window.dispatchEvent(new Event('resize')); } 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 } }); // Remove white background delay set to 0ms setTimeout(() => { if (!$(".e-off-canvas-visible").length) { $("body").removeClass("off-canvas-active"); forceRepaint(); // Force repaint when closing all } }, 0); } 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 $(".e-off-canvas").each(function() { $(this).attr("aria-hidden", "true").css({ "z-index": "10", "visibility": "hidden", "opacity": "0", "display": "none" }); }); // Handle same-page anchor link clicks $(document).on('click', 'a[href*="#"]', function(event) { let href = $(this).attr('href'); if (href.indexOf('#') !== -1) { // Close all off-canvas widgets when an anchor link is clicked closeAllOffCanvas(); } }); });

Cursuskalender

Filter

Specialistische cursusseni

Instructeurscursusseni

Wis alle filters

CursusPlaats Datum Tijd Kosten

Reanimatie van volwassenen (BLS), Basis cursusMariënberg 14-10-2025 12:30 - 16:30 € 55

Reanimatie van volwassenen (BLS), Basis cursusHeerhugowaard 14-10-2025 09:00 - 12:00 Gratis

Reanimatie van volwassenen (BLS), Basis cursusHeerhugowaard 14-10-2025 13:00 - 16:00 Gratis

(function () { // === COVER CONFIG === var COVER_TITLE = "Cursusreglement ALS"; var COVER_SUB = "Nederlandse Reanimatie Raad"; var COVER_VERSION = ""; // laat leeg als je geen versie wilt var COVER_LOGO_URL = "https://nrr.foome.nl/wp-content/uploads/sites/13/2025/01/Logo-website-350x100-1.webp"; // <-- vervang function todayNL() { var d = new Date(); return d.toLocaleDateString("nl-NL", { day: "2-digit", month: "long", year: "numeric" }); } function forceLoadImages(root){ if(!root) return; root.querySelectorAll("img").forEach(function(img){ var ds = img.getAttribute("data-src") || img.getAttribute("data-lazy-src"); if (ds) img.src = ds; img.loading = "eager"; img.decoding = "sync"; }); root.querySelectorAll("source[data-srcset]").forEach(function(s){ s.srcset = s.getAttribute("data-srcset"); }); } function buildCoverHTML(){ var dateStr = todayNL(); var versionPart = COVER_VERSION ? COVER_VERSION + " · " : ""; var logoHTML = COVER_LOGO_URL ? '' : ""; return '' + ''; } function collectPrintAreasHTML(){ var areas = Array.prototype.slice.call(document.querySelectorAll(".print-area")); if (!areas.length) return ""; areas.forEach(forceLoadImages); return areas.map(function(a){ return a.outerHTML; }).join("\n"); } function openPrintWindow(html){ var w = window.open("", "PrintWindow"); if (!w) { alert("Sta pop-ups toe om te kunnen printen."); return; } w.document.open(); w.document.write( 'PDF' + '' + buildCoverHTML() + '
' + html + '
' + '' ); w.document.close(); w.focus(); setTimeout(function(){ w.print(); w.close(); }, 250); } function init(){ var btn = document.getElementById("printToPdf"); if (!btn) return; btn.addEventListener("click", function(e){ e.preventDefault(); var html = collectPrintAreasHTML(); if (!html) { alert("Geen .print-area gevonden op deze pagina."); return; } openPrintWindow(html); }); } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", init); } else { init(); } })();