diff --git a/blocks/form/LeadForm.tsx b/blocks/form/LeadForm.tsx index 551630b..4653a24 100644 --- a/blocks/form/LeadForm.tsx +++ b/blocks/form/LeadForm.tsx @@ -8,6 +8,7 @@ const API_BASE_URL = export default function LeadForm({ value }: { value: FormBlockValue }) { const [values, setValues] = useState>({}); + const [website, setWebsite] = useState(""); // 蜂蜜陷阱字段,正常用户不可见,只有机器人会填写 const [status, setStatus] = useState<"idle" | "submitting" | "done" | "error">( "idle", ); @@ -28,6 +29,7 @@ export default function LeadForm({ value }: { value: FormBlockValue }) { form_id: form!.id, data: values, source_url: typeof window !== "undefined" ? window.location.href : "", + website, }), }); if (!res.ok) throw new Error("submit failed"); @@ -93,6 +95,17 @@ export default function LeadForm({ value }: { value: FormBlockValue }) { )} ))} + {/* 蜂蜜陷阱字段:离屏幕定位而非 display:none,避免部分机器人检测到隐藏属性后跳过;无需 tabIndex/aria-hidden 以外的额外依赖 */} + setWebsite(e.target.value)} + autoComplete="off" + tabIndex={-1} + aria-hidden="true" + className="absolute left-[-9999px] top-auto h-px w-px overflow-hidden" + />