Menu
EUR

Handbediende schuifpoorten | praktisch, veilig en ruimtebesparend

Ontdek onze schuifpoorten – ideaal voor oprit of bedrijfsterrein. Modern, veilig en makkelijk te bedienen.

Schuifpoorten

De schuifpoorten zijn een mooie aanvulling op ons assortiment poorten. De poorten zijn handbediend en zijn in diverse soorten uitvoeringen leverbaar.

  • Spijlenvulling - Spijlen tussen liggers of doorgestoken spijlen
  • Dubbelstaafmat 6/5/6 vulling
  • Dubbelstaafmat 8/6/8 vulling

Verkrijgbaar in het verzinkt of gecoat. 
Breedte: 3000, 4000 of 5000 mm. (Let op: dit is de doorgang breedte)
Hoogte: Variërend van 800 tot 2000 mm.

Wil je een grotere uitvoering, een poort met meer privacy of een elektrisch aangestuurde schuifpoort? Neem contact met ons op voor de mogelijkheden.

8 Producten
Toon:
Handmatige schuifpoort spijlenvulling gecoat
Handmatige schuifpoort spijlenvulling: mogelijkheid uit spijlen tussen liggers, of doorgestoken spijlen. In verschillende hoogtes en breedtes verkrijg... Meer
Handmatige schuifpoort spijlenvulling: mogelijkheid uit spijlen tussen...
€2.898,95 €2.395,83
Handmatige schuifpoort 8/6/8 vulling gecoat
Handmatige schuifpoort 8/6/8 vulling gecoat: Uitvoering met puntenkam mogelijk | In verschillende hoogtes en breedtes verkrijgbaar Meer
Handmatige schuifpoort 8/6/8 vulling gecoat: Uitvoering met puntenkam ...
€2.896,95 €2.394,17
Handmatige schuifpoort 6/5/6 vulling gecoat
Handmatige schuifpoort 6/5/6 vulling gecoat: Uitvoering met puntenkam mogelijk In verschillende hoogtes en breedtes verkrijgbaar Meer
Handmatige schuifpoort 6/5/6 vulling gecoat: Uitvoering met puntenkam ...
€2.848,95 €2.354,50
Handmatige schuifpoort spijlenvulling verzinkt
Handmatige schuifpoort spijlenvulling:mogelijkheid uit spijlen tussen liggers, of doorgestoken spijlen. in verschillende hoogtes en breedtes verkrijgb... Meer
Handmatige schuifpoort spijlenvulling:mogelijkheid uit spijlen tussen ...
€2.535,95 €2.095,83
Handmatige schuifpoort 8/6/8 vulling verzinkt
Handmatige schuifpoort 8/6/8 vulling verzinkt:Uitvoering met puntenkam mogelijkIn verschillende hoogtes en breedtes verkrijgbaar Meer
Handmatige schuifpoort 8/6/8 vulling verzinkt:Uitvoering met puntenkam...
€2.521,95 €2.084,26
Handmatige schuifpoort 6/5/6 vulling verzinkt
Handmatige schuifpoort 6/5/6 vulling verzinkt:Uitvoering met puntenkam mogelijkIn verschillende hoogtes en breedtes verkrijgbaar Meer
Handmatige schuifpoort 6/5/6 vulling verzinkt:Uitvoering met puntenkam...
€2.473,95 €2.044,59
Dichtwaaibeveiliging schuifpoort
Dichtwaaibeveiliging schuifpoort Meer
Dichtwaaibeveiliging schuifpoort
€69,99 €57,84
Handmatige schuifpoort Mikado gecoat
Handmatige schuifpoort spijlenvulling: mogelijkheid uit spijlen tussen liggers, of doorgestoken spijlen. In verschillende hoogtes en breedtes verkrijg... Meer
Handmatige schuifpoort spijlenvulling: mogelijkheid uit spijlen tussen...
€4.417,95 €3.651,20
Toon 1 - 8 van 8
Prijs
Min Max
Sluiten
Bankoverschrijving
Kies uw taal
Kies uw valuta

Mijn account

Wachtwoord vergeten?

Recent toegevoegd

Totaal incl. btw
€0,00
Bestel nog voor €700,00 en de verzending is gratis
0
Vergelijk
Start vergelijking

Dit artikel is toegevoegd aan uw winkel wagen!
(function () { const API_BASE = "https://hd-spijlen.michel-abchekwerk.workers.dev"; const TARGET_SLUG = "/spijlendirect-compleet-pakket"; // Alleen op deze pagina (robust: met/zonder .html, met trailing slash) if (!location.pathname.includes(TARGET_SLUG)) return; console.log("[HD] init", location.pathname); // --------- kleine CSS fix tegen layout shift ---------- (function injectCss() { const css = ` /* Zorg dat ons blok geen grid/float in de war brengt */ #hd-configurator { display:block; width:100%; clear:both; } #hd-configurator .hd-wrap { width:100%; } #hd-configurator .hd-wrap * { box-sizing:border-box; } `; const s = document.createElement("style"); s.textContent = css; document.head.appendChild(s); })(); function ready(fn) { if (document.readyState === "loading") document.addEventListener("DOMContentLoaded", fn); else fn(); } // --------- Helpers ---------- const fmtEUR = (n) => { try { return new Intl.NumberFormat("nl-NL", { style: "currency", currency: "EUR" }).format(n); } catch { return "€ " + (Math.round(n * 100) / 100).toFixed(2).replace(".", ","); } }; function getVatPref() { try { const v = localStorage.getItem("vat_type_pref") || ""; if (/excl/i.test(v)) return "excl"; if (/incl/i.test(v)) return "incl"; } catch {} const c = document.cookie || ""; if (/vat_type_pref=excl/i.test(c)) return "excl"; if (/vat_type_pref=incl/i.test(c)) return "incl"; return "incl"; } function roundingNote(m) { if (!isFinite(m) || m <= 0) return ""; const vakken = Math.ceil(m / 2.2); const eff = vakken * 2.2; return `Wordt afgerond naar ${vakken} vak(ken) = ${eff.toFixed(1).replace(".", ",")}m`; } // --------- Koopblok vinden & verbergen ---------- function findAddToCartSpan() { // 1) Specifiek op class (jij gaf die door) const candidates = Array.from( document.querySelectorAll("span.flex-grow-1.align-self-center.px-3") ); // 2) Tekst check (niet strict gelijk — includes is veiliger) const hit = candidates.find((s) => (s.textContent || "").trim().toLowerCase().includes("toevoegen aan winkelwagen") ); if (hit) return hit; // fallback: zoek op tekst in alle spans const any = Array.from(document.querySelectorAll("span")).find((s) => (s.textContent || "").trim().toLowerCase().includes("toevoegen aan winkelwagen") ); return any || null; } function findPurchaseContainerFromButton(btn) { // We zoeken de “kleinste” ancestor die: // - een select heeft (variant) // - een qty input/spinner heeft OF een hoeveelheid veld // - de add-to-cart button bevat let el = btn; for (let i = 0; i < 10 && el; i++) { const hasSelect = !!el.querySelector("select"); const hasQty = !!el.querySelector('input[type="number"]') || !!el.querySelector(".qty, .quantity, .quantity-selector, .input-group"); const hasBtn = !!el.querySelector("button, input[type=submit]"); if (hasSelect && hasBtn && hasQty) return el; el = el.parentElement; } // fallback: verberg gewoon het form of parent return btn.closest("form") || btn.parentElement; } function hideBuyBox() { // sticky koopknop (als aanwezig) const sticky = document.querySelector("#addtocart-sticky, .addtocart-sticky, .add-to-cart-sticky"); if (sticky) sticky.style.display = "none"; const span = findAddToCartSpan(); if (!span) return; const btn = span.closest("button") || span.closest('[role="button"]'); if (!btn) return; const container = findPurchaseContainerFromButton(btn); if (container) { container.style.display = "none"; container.setAttribute("data-hd-hidden", "1"); } // Ook de “Maak een keuze” label-block wegdrukken als die elders staat const labels = Array.from(document.querySelectorAll("label, .label")); const choiceLabel = labels.find((l) => (l.textContent || "").toLowerCase().includes("maak een keuze")); if (choiceLabel) { const block = choiceLabel.closest(".form-group, .product-options, .product__options, .row, .field") || choiceLabel.parentElement; if (block) block.style.display = "none"; } } // Houd het weg als Lightspeed her-rendered const mo = new MutationObserver(() => hideBuyBox()); mo.observe(document.documentElement, { childList: true, subtree: true }); // --------- Main ---------- ready(async () => { // 1) koopblok alvast wegdrukken (kan later opnieuw verschijnen) hideBuyBox(); // 2) mount const mount = document.getElementById("hd-configurator"); if (!mount) { console.warn("[HD] #hd-configurator niet gevonden. Zet
in productomschrijving."); return; } // Defaults (later uitbreidbaar met extra velden) const DEFAULTS = { soortSpijlen: "Spijlen 25x25 vlak", hoeken: "0", muuraansluiting: "Geen", soortPalen: "Grondpalen", soortPaaldop: "Paalkap kunststof", }; // 3) opties ophalen let opt; try { opt = await fetch(API_BASE + "/api/options").then((r) => r.json()); } catch (e) { opt = { ok: false, error: String(e) }; } if (!opt.ok) { mount.innerHTML = `
Configurator error
${opt.error || "Opties konden niet geladen worden."}
`; return; } const kleuren = (opt.options.kleuren || []).filter((k) => /7016|9005/.test(k)); const hoogtes = opt.options.hoogtes || []; // 4) UI renderen (neutraal, breekt layout niet) mount.innerHTML = `

Configureer je spijlenpakket

Kleur
Hoogte
Totale lengte (meter)
`; const elKleur = mount.querySelector("#hd-kleur"); const elHoogte = mount.querySelector("#hd-hoogte"); const elLengte = mount.querySelector("#hd-lengte"); const elRound = mount.querySelector("#hd-round"); const elBtn = mount.querySelector("#hd-calc"); const elPrice = mount.querySelector("#hd-price"); kleuren.forEach((k) => elKleur.add(new Option(k, k))); hoogtes.forEach((h) => elHoogte.add(new Option(h, h))); const updateRound = () => { elRound.textContent = roundingNote(Number(elLengte.value || 0)); }; elLengte.addEventListener("input", updateRound); updateRound(); async function quote() { elBtn.disabled = true; elBtn.style.opacity = "0.7"; const cfg = { ...DEFAULTS, kleur: elKleur.value, hoogte: elHoogte.value, lengthM: Number(elLengte.value || 0), }; let res; try { res = await fetch(API_BASE + "/api/quote", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ config: cfg }), }).then((r) => r.json()); } catch (e) { res = { ok: false, error: String(e) }; } elBtn.disabled = false; elBtn.style.opacity = "1"; if (!res.ok) { elPrice.innerHTML = `
Prijs ophalen mislukt: ${res.error || "onbekend"}
`; return; } const pref = getVatPref(); const main = pref === "excl" ? res.totalExcl : res.totalIncl; elPrice.innerHTML = `
${fmtEUR(main)}
Incl. ${fmtEUR(res.totalIncl)} · Excl. ${fmtEUR(res.totalExcl)} · ${res.lengthLabel}
`; // koopblok nogmaals wegdrukken (LS kan terugzetten) hideBuyBox(); } elBtn.addEventListener("click", quote); quote(); // en nogmaals verbergen na init hideBuyBox(); }); })();