{"id":14,"date":"2025-09-02T06:38:19","date_gmt":"2025-09-02T06:38:19","guid":{"rendered":"https:\/\/weldomachining.com\/?page_id=14"},"modified":"2026-09-01T11:34:08","modified_gmt":"2026-09-01T11:34:08","slug":"contact-us","status":"publish","type":"page","link":"https:\/\/weldomachining.com\/nl\/contact-us\/","title":{"rendered":"Neem contact met ons op"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"14\" class=\"elementor elementor-14\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5cc5597 e-con-full e-flex e-con e-parent\" data-id=\"5cc5597\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-c9ba450 e-flex e-con-boxed e-con e-child\" data-id=\"c9ba450\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2d5f453 elementor-widget elementor-widget-html\" data-id=\"2d5f453\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- COMPLETE INDEPENDENT BLOCK: WELDO CONTACT LEFT -->\n<style>\n#weldo-contact-left,\n#weldo-contact-left * {\n  box-sizing: border-box;\n}\n\n#weldo-contact-left {\n  --wct-primary: #2d2f91;\n  --wct-primary-dark: #242679;\n  --wct-cyan: #4bb0d0;\n  --wct-heading: #213b47;\n  --wct-text: #607985;\n  --wct-pale: #f1f9fd;\n  --wct-media: #eaf6fc;\n  --wct-border: #c9e4f2;\n  --wct-white: #ffffff;\n\n  width: 100%;\n  height: 100%;\n  margin: 0;\n  padding: 10px;\n\n  color: var(--wct-heading);\n  background: var(--wct-media);\n  border: 1px solid var(--wct-border);\n  border-radius: 22px;\n\n  font-family: Arial, Helvetica, sans-serif;\n}\n\n#weldo-contact-left .wct__inner {\n  display: flex;\n  flex-direction: column;\n  width: 100%;\n  min-height: 620px;\n  padding: 32px;\n\n  background: var(--wct-white);\n  border: 1px solid var(--wct-border);\n  border-radius: 16px;\n}\n\n\/* Header *\/\n\n#weldo-contact-left .wct__head {\n  max-width: 720px;\n}\n\n#weldo-contact-left .wct__eyebrow {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n\n  margin: 0 0 14px;\n\n  color: var(--wct-primary);\n  font-size: 14px;\n  font-weight: 800;\n  line-height: 1.3;\n  letter-spacing: 1.7px;\n  text-transform: uppercase;\n}\n\n#weldo-contact-left .wct__eyebrow::before {\n  flex: 0 0 48px;\n  width: 48px;\n  height: 5px;\n\n  background: var(--wct-cyan);\n  border-radius: 99px;\n\n  content: \"\";\n}\n\n#weldo-contact-left h1 {\n  margin: 0 0 16px;\n\n  color: var(--wct-heading);\n  font-size: clamp(28px, 3vw, 35px);\n  font-weight: 800;\n  line-height: 1.16;\n  letter-spacing: -0.02em;\n}\n\n#weldo-contact-left .wct__intro {\n  max-width: 680px;\n  margin: 0;\n\n  color: var(--wct-text);\n  font-size: 16px;\n  line-height: 1.7;\n}\n\n\/* Contact cards *\/\n\n#weldo-contact-left .wct__details {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 12px;\n\n  margin-top: 24px;\n}\n\n#weldo-contact-left .wct__item {\n  min-width: 0;\n  padding: 15px 16px;\n\n  background: var(--wct-pale);\n  border: 1px solid var(--wct-border);\n  border-radius: 12px;\n\n  transition:\n    border-color 0.2s ease,\n    box-shadow 0.2s ease,\n    transform 0.2s ease;\n}\n\n#weldo-contact-left .wct__item:hover {\n  border-color: var(--wct-cyan);\n  box-shadow: 0 10px 24px rgba(33, 59, 71, 0.08);\n  transform: translateY(-2px);\n}\n\n#weldo-contact-left .wct__label {\n  display: block;\n  margin: 0 0 6px;\n\n  color: var(--wct-primary);\n  font-size: 14px;\n  font-weight: 800;\n  line-height: 1.3;\n}\n\n#weldo-contact-left .wct__value,\n#weldo-contact-left .wct__value:visited {\n  display: block;\n\n  color: var(--wct-heading);\n  font-size: 15px;\n  font-style: normal;\n  font-weight: 700;\n  line-height: 1.5;\n  text-decoration: none;\n  overflow-wrap: anywhere;\n}\n\n#weldo-contact-left a.wct__value:hover,\n#weldo-contact-left a.wct__value:focus {\n  color: var(--wct-primary);\n  text-decoration: none;\n}\n\n\/* Team image \u2014 desktop width reduced to half *\/\n\n#weldo-contact-left .wct__gallery {\n  display: flex;\n  justify-content: center;\n\n  width: 100%;\n  margin-top: auto;\n  padding-top: 24px;\n}\n\n#weldo-contact-left .wct__gallery figure {\n  width: min(50%, 520px);\n  margin: 0;\n  padding: 8px;\n  overflow: hidden;\n\n  background: var(--wct-media);\n  border: 1px solid var(--wct-border);\n  border-radius: 14px;\n}\n\n#weldo-contact-left .wct__gallery img {\n  display: block;\n\n  width: 100% !important;\n  max-width: none !important;\n  height: auto !important;\n  max-height: none !important;\n\n  object-fit: contain;\n  object-position: center;\n\n  background: var(--wct-white);\n  border-radius: 9px;\n}\n\n\/* Tablet *\/\n\n@media (max-width: 900px) {\n  #weldo-contact-left .wct__inner {\n    min-height: auto;\n    padding: 26px;\n  }\n\n  #weldo-contact-left .wct__gallery {\n    margin-top: 20px;\n    padding-top: 0;\n  }\n\n  #weldo-contact-left .wct__gallery figure {\n    width: min(65%, 520px);\n  }\n}\n\n\/* Mobile *\/\n\n@media (max-width: 620px) {\n  #weldo-contact-left {\n    padding: 7px;\n    border-radius: 17px;\n  }\n\n  #weldo-contact-left .wct__inner {\n    min-height: auto;\n    padding: 22px 16px;\n    border-radius: 12px;\n  }\n\n  #weldo-contact-left .wct__eyebrow {\n    gap: 9px;\n    margin-bottom: 12px;\n    font-size: 14px;\n    letter-spacing: 1.2px;\n  }\n\n  #weldo-contact-left .wct__eyebrow::before {\n    flex-basis: 36px;\n    width: 36px;\n    height: 4px;\n  }\n\n  #weldo-contact-left h1 {\n    margin-bottom: 13px;\n    font-size: 29px;\n  }\n\n  #weldo-contact-left .wct__intro {\n    font-size: 15px;\n    line-height: 1.65;\n  }\n\n  #weldo-contact-left .wct__details {\n    grid-template-columns: 1fr;\n    gap: 9px;\n    margin-top: 20px;\n  }\n\n  #weldo-contact-left .wct__item {\n    padding: 13px 14px;\n  }\n\n  #weldo-contact-left .wct__gallery {\n    margin-top: 18px;\n  }\n\n  #weldo-contact-left .wct__gallery figure {\n    width: 100%;\n    padding: 6px;\n    border-radius: 11px;\n  }\n\n  #weldo-contact-left .wct__gallery img {\n    width: 100% !important;\n    height: auto !important;\n    max-height: none !important;\n    border-radius: 7px;\n  }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  #weldo-contact-left .wct__item {\n    transition: none;\n  }\n}\n<\/style>\n\n<section\n  id=\"weldo-contact-left\"\n  aria-labelledby=\"weldo-contact-title\"\n>\n  <div class=\"wct__inner\">\n\n    <header class=\"wct__head\">\n      <div class=\"wct__eyebrow\">\n        Contact Weldo Machining\n      <\/div>\n\n      <h1 id=\"weldo-contact-title\">\n        Talk With Our Manufacturing Team\n      <\/h1>\n\n      <p class=\"wct__intro\">\n        Share your drawing, material, quantity, critical tolerances and\n        finish requirements. Our team will review the manufacturing scope\n        and prepare a clear production quotation.\n      <\/p>\n    <\/header>\n\n    <div class=\"wct__details\">\n\n      <div class=\"wct__item\">\n        <span class=\"wct__label\">Project Email<\/span>\n        <a\n          class=\"wct__value\"\n          href=\"mailto:cg@weldomachining.com\"\n        >\n          cg@weldomachining.com\n        <\/a>\n      <\/div>\n\n      <div class=\"wct__item\">\n        <span class=\"wct__label\">Phone<\/span>\n        <a\n          class=\"wct__value\"\n          href=\"tel:+8613532759745\"\n        >\n          +86 135 3275 9745\n        <\/a>\n      <\/div>\n\n      <div class=\"wct__item\">\n        <span class=\"wct__label\">Business Hours<\/span>\n        <strong class=\"wct__value\">\n          Mon\u2013Fri \u00b7 9:00 AM\u20139:00 PM\n        <\/strong>\n      <\/div>\n\n      <div class=\"wct__item\">\n        <span class=\"wct__label\">Manufacturing Location<\/span>\n        <address class=\"wct__value\">\n          Dongguan, Guangdong, China\n        <\/address>\n      <\/div>\n\n    <\/div>\n\n    <div class=\"wct__gallery\">\n      <figure>\n        <img\n          src=\"https:\/\/weldomachining.com\/wp-content\/uploads\/2025\/10\/Group-photo-of-weldo-staff.webp\"\n          alt=\"Weldo Machining manufacturing team\"\n          loading=\"lazy\"\n          decoding=\"async\"\n        >\n      <\/figure>\n    <\/div>\n\n  <\/div>\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4a17645 e-con-full e-flex e-con e-child\" data-id=\"4a17645\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-c2b8592 e-con-full e-flex e-con e-child\" data-id=\"c2b8592\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0e5c63c elementor-widget elementor-widget-heading\" data-id=\"0e5c63c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Contact with us<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-da0c394 elementor-button-align-stretch elementor-widget elementor-widget-form\" data-id=\"da0c394\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;button_width&quot;:&quot;20&quot;,&quot;step_next_label&quot;:&quot;Next&quot;,&quot;step_previous_label&quot;:&quot;Previous&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}\" data-widget_type=\"form.default\">\n\t\t\t\t\t\t\t<form class=\"elementor-form\" method=\"post\" name=\"New Form\" aria-label=\"New Form\">\n\t\t\t<input type=\"hidden\" name=\"post_id\" value=\"14\"\/>\n\t\t\t<input type=\"hidden\" name=\"form_id\" value=\"da0c394\"\/>\n\t\t\t<input type=\"hidden\" name=\"referer_title\" value=\"\" \/>\n\n\t\t\t\n\t\t\t<div class=\"elementor-form-fields-wrapper elementor-labels-above\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-100 elementor-field-required elementor-mark-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-name\" class=\"elementor-field-label\">\n\t\t\t\t\t\t\t\tName\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"text\" name=\"form_fields[name]\" id=\"form-field-name\" class=\"elementor-field elementor-size-lg  elementor-field-textual\" placeholder=\"Name\" required=\"required\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required elementor-mark-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-email\" class=\"elementor-field-label\">\n\t\t\t\t\t\t\t\tEmail\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"email\" name=\"form_fields[email]\" id=\"form-field-email\" class=\"elementor-field elementor-size-lg  elementor-field-textual\" placeholder=\"Email\" required=\"required\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-tel elementor-field-group elementor-column elementor-field-group-field_99be3a2 elementor-col-100\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-field_99be3a2\" class=\"elementor-field-label\">\n\t\t\t\t\t\t\t\tPhone number\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t<input size=\"1\" type=\"tel\" name=\"form_fields[field_99be3a2]\" id=\"form-field-field_99be3a2\" class=\"elementor-field elementor-size-lg  elementor-field-textual\" pattern=\"[0-9()#&amp;+*-=.]+\" title=\"Nur Nummern oder Telefon-Zeichen (#, -, *, etc) werden akzeptiert.\">\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100 elementor-field-required elementor-mark-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-message\" class=\"elementor-field-label\">\n\t\t\t\t\t\t\t\tMessage\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t<textarea class=\"elementor-field-textual elementor-field  elementor-size-lg\" name=\"form_fields[message]\" id=\"form-field-message\" rows=\"5\" placeholder=\"Message\" required=\"required\"><\/textarea>\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-upload elementor-field-group elementor-column elementor-field-group-field_322f266 elementor-col-100\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-field_322f266\" class=\"elementor-field-label\">\n\t\t\t\t\t\t\t\tFile\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t<input type=\"file\" name=\"form_fields[field_322f266][]\" id=\"form-field-field_322f266\" class=\"elementor-field elementor-size-lg  elementor-upload-field\" multiple=\"multiple\" data-maxsize=\"4\" data-maxsize-message=\"Diese Datei \u00fcbersteigt die maximale Dateigr\u00f6\u00dfe.\">\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-html elementor-field-group elementor-column elementor-field-group-field_f3b8d74 elementor-col-100\">\n\t\t\t\t\t<style>\n.captcha-container {\n    margin: 20px 0;\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    flex-wrap: wrap;\n}\n#captchaCanvas {\n    border: 1px solid #ddd;\n    border-radius: 4px;\n    background: #f8f9fa;\n    cursor: pointer;\n    box-shadow: 0 2px 4px rgba(0,0,0,0.05);\n}\n#captchaInput {\n    padding: 12px 15px;\n    border: 1px solid #ddd;\n    border-radius: 4px;\n    width: 160px;\n    font-size: 16px;\n    transition: border 0.3s;\n}\n#captchaInput:focus {\n    border-color: #3498db;\n    outline: none;\n    box-shadow: 0 0 0 2px rgba(52,152,219,0.2);\n}\n.error-message {\n    color: #e74c3c;\n    font-size: 14px;\n    margin-top: 8px;\n    display: none;\n    font-weight: 500;\n    width: 100%;\n}\n.captcha-refresh {\n    color: #7f8c8d;\n    font-size: 14px;\n    margin-top: 5px;\n    width: 100%;\n}\n<\/style>\n\n<div class=\"captcha-container\">\n    <canvas id=\"captchaCanvas\" width=\"180\" height=\"55\" title=\"\"><\/canvas>\n    <input type=\"text\" id=\"captchaInput\" maxlength=\"6\" autocomplete=\"off\">\n<\/div>\n<div class=\"error-message\" id=\"errorMsg\"><\/div>\n<div class=\"captcha-refresh\" id=\"refreshHint\"><\/div>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n    \/\/ ================= \u591a\u8bed\u8a00\u652f\u6301 =================\n    const LANGUAGE_PACK = {\n        'zh': { \/\/ \u4e2d\u6587\n            inputPlaceholder: \"\u8f93\u5165\u9a8c\u8bc1\u7801\",\n            errorMessage: \"\u9a8c\u8bc1\u7801\u9519\u8bef\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165\",\n            refreshHint: \"\u770b\u4e0d\u6e05\uff1f\u70b9\u51fb\u9a8c\u8bc1\u7801\u56fe\u7247\u5237\u65b0\",\n            canvasTitle: \"\u70b9\u51fb\u5237\u65b0\u9a8c\u8bc1\u7801\"\n        },\n        'en': { \/\/ \u82f1\u6587\n            inputPlaceholder: \"Enter CAPTCHA\",\n            errorMessage: \"Incorrect CAPTCHA, please try again\",\n            refreshHint: \"Can't see? Click to refresh\",\n            canvasTitle: \"Click to refresh CAPTCHA\"\n        },\n        'ja': { \/\/ \u65e5\u8bed\n            inputPlaceholder: \"\u8a8d\u8a3c\u30b3\u30fc\u30c9\u3092\u5165\u529b\",\n            errorMessage: \"\u8a8d\u8a3c\u30b3\u30fc\u30c9\u304c\u9593\u9055\u3063\u3066\u3044\u307e\u3059\",\n            refreshHint: \"\u753b\u50cf\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u66f4\u65b0\",\n            canvasTitle: \"\u30af\u30ea\u30c3\u30af\u3057\u3066\u66f4\u65b0\"\n        },\n        'ko': { \/\/ \u97e9\u8bed\n            inputPlaceholder: \"\ubcf4\uc548\ubb38\uc790 \uc785\ub825\",\n            errorMessage: \"\uc798\ubabb\ub41c \ubcf4\uc548\ubb38\uc790\",\n            refreshHint: \"\uc0c8\ub85c\uace0\uce68\ud558\ub824\uba74 \ud074\ub9ad\",\n            canvasTitle: \"\ud074\ub9ad\ud558\uc5ec \uc0c8\ub85c\uace0\uce68\"\n        }\n    };\n    \n    \/\/ \u83b7\u53d6\u6d4f\u89c8\u5668\u8bed\u8a00\n    function getBrowserLanguage() {\n        const lang = navigator.language || navigator.userLanguage;\n        return lang.substring(0, 2); \/\/ \u53ea\u53d6\u524d\u4e24\u4f4d (zh, en, ja\u7b49)\n    }\n    \n    \/\/ \u5e94\u7528\u8bed\u8a00\u8bbe\u7f6e\n    function applyLanguageSettings() {\n        const lang = getBrowserLanguage();\n        const langPack = LANGUAGE_PACK[lang] || LANGUAGE_PACK['en'];\n        \n        document.getElementById('captchaInput').placeholder = langPack.inputPlaceholder;\n        document.getElementById('errorMsg').textContent = langPack.errorMessage;\n        document.getElementById('refreshHint').textContent = langPack.refreshHint;\n        document.getElementById('captchaCanvas').title = langPack.canvasTitle;\n    }\n    \n    \/\/ ================= \u9a8c\u8bc1\u7801\u6838\u5fc3\u529f\u80fd =================\n    \/\/ \u751f\u6210\u968f\u673a\u9a8c\u8bc1\u7801\n    function generateCaptcha() {\n        const chars = \"ABCDEFGHJKLMNPQRSTUVWXYZ23456789\";\n        let captcha = \"\";\n        for (let i = 0; i < 5; i++) {\n            captcha += chars.charAt(Math.floor(Math.random() * chars.length));\n        }\n        return captcha;\n    }\n\n    \/\/ \u7ed8\u5236\u9a8c\u8bc1\u7801\u5230Canvas\n    function drawCaptcha(captcha) {\n        const canvas = document.getElementById('captchaCanvas');\n        const ctx = canvas.getContext('2d');\n        \n        \/\/ \u6e05\u9664\u753b\u5e03\n        ctx.clearRect(0, 0, canvas.width, canvas.height);\n        \n        \/\/ \u6e10\u53d8\u80cc\u666f\n        const gradient = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);\n        gradient.addColorStop(0, '#f8f9fa');\n        gradient.addColorStop(1, '#e9ecef');\n        ctx.fillStyle = gradient;\n        ctx.fillRect(0, 0, canvas.width, canvas.height);\n        \n        \/\/ \u7ed8\u5236\u5e72\u6270\u7ebf\n        for (let i = 0; i < 6; i++) {\n            ctx.strokeStyle = `rgba(${Math.random()*100},${Math.random()*100},${Math.random()*100},0.6)`;\n            ctx.beginPath();\n            ctx.lineWidth = 0.8;\n            ctx.moveTo(Math.random() * canvas.width, Math.random() * canvas.height);\n            ctx.lineTo(Math.random() * canvas.width, Math.random() * canvas.height);\n            ctx.stroke();\n        }\n        \n        \/\/ \u7ed8\u5236\u5e72\u6270\u70b9\n        for (let i = 0; i < 80; i++) {\n            ctx.fillStyle = `rgba(${Math.random()*100},${Math.random()*100},${Math.random()*100},0.4)`;\n            ctx.beginPath();\n            ctx.arc(\n                Math.random() * canvas.width,\n                Math.random() * canvas.height,\n                Math.random() * 1.5,\n                0,\n                2 * Math.PI\n            );\n            ctx.fill();\n        }\n        \n        \/\/ \u7ed8\u5236\u9a8c\u8bc1\u7801\u6587\u5b57\n        ctx.font = 'bold 32px \"Segoe UI\", Arial, sans-serif';\n        ctx.textAlign = 'center';\n        \n        for (let i = 0; i < captcha.length; i++) {\n            ctx.save();\n            ctx.translate(30 + i * 30, 38);\n            \n            \/\/ \u968f\u673a\u65cb\u8f6c\u548c\u626d\u66f2\n            const rotateAngle = (Math.random() - 0.5) * 0.4;\n            ctx.rotate(rotateAngle);\n            \n            \/\/ \u968f\u673a\u989c\u8272\n            ctx.fillStyle = `rgba(${30 + Math.random()*70},${30 + Math.random()*70},${30 + Math.random()*70},0.9)`;\n            \n            \/\/ \u8f7b\u5fae\u6587\u5b57\u53d8\u5f62\n            const scaleX = 0.9 + Math.random() * 0.2;\n            ctx.transform(scaleX, 0, 0.1, 1, 0, 0);\n            \n            ctx.fillText(captcha.charAt(i), 0, 0);\n            ctx.restore();\n        }\n    }\n\n    \/\/ \u521d\u59cb\u5316\u9a8c\u8bc1\u7801\n    let currentCaptcha = generateCaptcha();\n    \n    \/\/ \u5e94\u7528\u8bed\u8a00\u8bbe\u7f6e\n    applyLanguageSettings();\n    drawCaptcha(currentCaptcha);\n    \n    \/\/ \u70b9\u51fb\u5237\u65b0\u9a8c\u8bc1\u7801\n    document.getElementById('captchaCanvas').addEventListener('click', function() {\n        currentCaptcha = generateCaptcha();\n        drawCaptcha(currentCaptcha);\n        document.getElementById('errorMsg').style.display = 'none';\n        document.getElementById('captchaInput').value = '';\n    });\n\n    \/\/ ======== Elementor\u8868\u5355\u96c6\u6210 ========\n    \/\/ \u8868\u5355\u63d0\u4ea4\u9a8c\u8bc1\u51fd\u6570\n    function validateFormCaptcha() {\n        const userInput = document.getElementById('captchaInput').value.toUpperCase().replace(\/\\s\/g, '');\n        const errorMsg = document.getElementById('errorMsg');\n        \n        if (userInput === currentCaptcha) {\n            errorMsg.style.display = 'none';\n            return true;\n        } else {\n            \/\/ \u9519\u8bef\u63d0\u793a\n            errorMsg.style.display = 'block';\n            const input = document.getElementById('captchaInput');\n            input.style.borderColor = '#e74c3c';\n            input.focus();\n            \n            setTimeout(function() {\n                input.style.borderColor = '#ddd';\n            }, 1500);\n            \n            \/\/ \u5237\u65b0\u9a8c\u8bc1\u7801\n            currentCaptcha = generateCaptcha();\n            drawCaptcha(currentCaptcha);\n            return false;\n        }\n    }\n\n    \/\/ \u7ed1\u5b9aElementor\u8868\u5355\u63d0\u4ea4\u4e8b\u4ef6\n    setTimeout(function() {\n        const elementorForms = document.querySelectorAll('form.elementor-form');\n        \n        if (elementorForms.length > 0) {\n            elementorForms.forEach(function(form) {\n                form.addEventListener('submit', function(e) {\n                    if (!validateFormCaptcha()) {\n                        e.preventDefault();\n                        \n                        \/\/ \u6dfb\u52a0\u6296\u52a8\u52a8\u753b\n                        const captchaContainer = document.querySelector('.captcha-container');\n                        captchaContainer.style.transform = 'translateX(10px)';\n                        setTimeout(() => captchaContainer.style.transform = 'translateX(-10px)', 100);\n                        setTimeout(() => captchaContainer.style.transform = 'translateX(0)', 200);\n                    }\n                });\n            });\n        }\n    }, 1000);\n    \n    \/\/ ======== \u81ea\u5b9a\u4e49\u9009\u9879 ========\n    \/\/ \u53ef\u9009\u914d\u7f6e\u9879\uff08\u6839\u636e\u9700\u6c42\u53d6\u6d88\u6ce8\u91ca\uff09\n    \/*\n    const CAPTCHA_CONFIG = {\n        length: 5,           \/\/ \u9a8c\u8bc1\u7801\u957f\u5ea6\n        fontSize: 32,        \/\/ \u5b57\u4f53\u5927\u5c0f\n        width: 180,          \/\/ \u753b\u5e03\u5bbd\u5ea6\n        height: 55,          \/\/ \u753b\u5e03\u9ad8\u5ea6\n        charSet: \"ABCDEFGHJKLMNPQRSTUVWXYZ23456789\", \/\/ \u5b57\u7b26\u96c6\n        background: [\"#f8f9fa\", \"#e9ecef\"] \/\/ \u6e10\u53d8\u80cc\u666f\u8272\n    };\n    *\/\n});\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-group elementor-column elementor-field-type-submit elementor-col-20 e-form__buttons\">\n\t\t\t\t\t<button class=\"elementor-button elementor-size-sm\" type=\"submit\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Send<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/form>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Neem contact op met Weldo Machining. Praat met ons productieteam. Deel uw tekening, materiaal, hoeveelheid, kritische toleranties en afwerkingsvereisten. Ons team zal de omvang van de productie beoordelen en een duidelijke productieofferte opstellen. E-mail voor projecten: cg@weldomachining.com Telefoon: +86 135 3275 9745 Kantooruren: ma\u2013vr \u00b7 09:00\u201321:00 uur Productielocatie: Dongguan, Guangdong, China Neem contact met ons op<\/p>","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":4,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-14","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/pages\/14","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/comments?post=14"}],"version-history":[{"count":51,"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/pages\/14\/revisions"}],"predecessor-version":[{"id":14391,"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/pages\/14\/revisions\/14391"}],"wp:attachment":[{"href":"https:\/\/weldomachining.com\/nl\/wp-json\/wp\/v2\/media?parent=14"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}