[ SKILL_DOCUMENTATION ]
# 配置
## 脚本加载
### 基础(隐式渲染)
html
页面加载时自动渲染带有 `class="cf-turnstile"` 的小部件。
### 显式渲染
html
通过 `window.turnstile.render()` 手动控制小部件的渲染时机和位置。
### 带加载回调
html
function myCallback() {
// API 已就绪
window.turnstile.render('#container', { sitekey: 'YOUR_SITE_KEY' });
}
### 兼容模式
html
提供 `grecaptcha` API,用于直接替换 Google reCAPTCHA。
## 小部件配置
### 完整选项对象
javascript
{
// 必填
sitekey: 'YOUR_SITE_KEY', // 从仪表板获取的小部件 sitekey
// 回调函数
callback: (token) => {}, // 成功 - token 已就绪
'error-callback': (code) => {}, // 发生错误
'expired-callback': () => {}, // Token 过期 (>5分钟)
'timeout-callback': () => {}, // 挑战超时
'before-interactive-callback': () => {}, // 显示复选框前
'after-interactive-callback': () => {}, // 用户交互后
'unsupported-callback': () => {}, // 浏览器不支持 Turnstile
// 外观
theme: 'auto', // 'light' | 'dark' | 'auto'
size: 'normal', // 'normal' | 'compact' | 'flexible'
tabindex: 0, // Tab 键顺序(无障碍访问)
language: 'auto', // ISO 639-1 代码或 'auto'
// 行为
execution: 'render', // 'render' (自动) | 'execute' (手动)
appearance: 'always', // 'always' | 'execute' | 'interaction-only'
retry: 'auto', // 'auto' | 'never'
'retry-interval': 8000, // 重试间隔 (ms),默认 8000
'refresh-expired': 'auto', // 'auto' | 'manual' | 'never'
// 表单集成
'response-field': true, // 添加隐藏输入框 (默认: true)
'response-field-name': 'cf-turnstile-response', // 隐藏输入框名称
// 分析与数据
action: 'login', // 操作名称 (用于分析)
cData: 'user-session-123', // 自定义数据 (在 siteverify 中返回)
}