脚本标签
通过简单的脚本标签将 Docs Embed 添加到任何网站
将 Docs Embed 添加到您的网站或应用的最快方法是通过“独立”脚本标签添加。GitBook 中的每个文档站点都包含一个可直接使用的脚本,用于将您的文档嵌入为小部件。
步骤
可选地配置嵌入
在调用前添加自定义选项 show():
<script src="https://docs.company.com/~gitbook/embed/script.js"></script>
<script>
window.GitBook('init', { siteURL: 'https://docs.company.com' });
window.GitBook('configure', {
button: {
label: 'Ask',
icon: 'assistant' // 'assistant' | 'sparkle' | 'help' | 'book'
},
tabs: ['assistant', 'docs'],
actions: [
{
icon: 'circle-question',
label: 'Contact Support',
onClick: () => window.open('https://support.example.com', '_blank')
}
],
greeting: { title: 'Welcome!', subtitle: 'How can I help?' },
suggestions: ['What is GitBook?', 'How do I get started?']
});
window.GitBook('show');
</script>动态加载(可选)
对于需要认证的文档或条件加载,请在运行时注入脚本:
<script>
function loadGitBookEmbed() {
var script = document.createElement("script");
script.src = "https://docs.company.com/~gitbook/embed/script.js";
script.async = true;
script.onload = function () {
window.GitBook('init', { siteURL: 'https://docs.company.com' });
window.GitBook("show");
};
document.head.appendChild(script);
}
// 准备就绪时加载
loadGitBookEmbed();
</script>API 参考
初始化
GitBook('init', options: { siteURL: string }, frameOptions?: { visitor?: {...} })- 使用站点 URL 和可选的已认证访问初始化小部件
小部件控制
GitBook('show')- 显示小部件按钮GitBook('hide')- 隐藏小部件按钮GitBook('open')- 打开小部件窗口GitBook('close')- 关闭小部件窗口GitBook('toggle')- 切换小部件窗口
导航
GitBook('navigateToPage', path: string)- 在文档选项卡中导航到特定页面GitBook('navigateToAssistant')- 导航到助理选项卡
聊天
GitBook('postUserMessage', message: string)- 向聊天发布消息GitBook('clearChat')- 清除聊天记录
配置
GitBook('configure', settings: {...})- 配置小部件设置(见下方“配置”部分)GitBook('unload')- 从页面中彻底移除小部件
配置选项
可以通过以下方式使用配置选项 GitBook('configure', {...}):
tabs
tabs覆盖要显示的选项卡。默认为您站点的配置。
类型:
('assistant' | 'docs')[]选项:
['assistant', 'docs']- 显示两个选项卡['assistant']- 仅显示助理选项卡['docs']- 仅显示文档选项卡
actions
actions在侧栏与选项卡并列渲染的自定义操作按钮。每个操作按钮在点击时会触发回调。
注意:之前命名为 buttons。请使用 actions 代替。
类型:
Array<{ icon: string, label: string, onClick: () => void }>属性:
icon:string- 图标名称。任何 FontAwesome 图标 均受支持label:string- 按钮标签文本onClick:() => void | Promise<void>- 点击时的回调函数
greeting
greeting在助理选项卡中显示的欢迎消息。
类型:
{ title: string, subtitle: string }
suggestions
suggestions在助理欢迎界面中显示的建议问题。
类型:
string[]
tools
tools用于扩展助理的自定义 AI 工具。参见 创建自定义工具 以获取详细信息。
类型:
Array<{ name: string, description: string, inputSchema: object, execute: Function, confirmation?: {...} }>
button
button配置启动嵌入的小部件按钮(仅适用于独立脚本)。这允许您自定义出现在页面右下角按钮的标签和图标。
类型:
{ label: string, icon: 'assistant' | 'sparkle' | 'help' | 'book' }属性:
label:string- 显示在按钮上的文本icon:'assistant' | 'sparkle' | 'help' | 'book'- 显示在按钮上的图标assistant- 助理图标sparkle- 闪光图标help- 帮助/问号图标book- 书本图标
示例:
window.GitBook('configure', {
button: {
label: 'Ask',
icon: 'assistant'
}
});注意: 此选项仅在使用独立脚本标签实现时可用。对于 React 或 Node.js 实现,您需要创建自己的按钮来触发嵌入。
visitor (已认证访问)
visitor (已认证访问)在使用以下方式初始化时传入 GitBook('init', options, frameOptions)。用于 自适应内容 和 已认证访问.
类型:
{ token?: string, unsignedClaims?: Record<string, unknown> }属性:
token:string(可选)- 已签名的 JWT 令牌unsignedClaims:Record<string, unknown>(可选)- 用于动态表达式的未签名声明
常见问题陷阱
脚本 URL 不正确 – 确保您使用的是实际的文档 URL,而不是示例 URL
docs.company.com.在脚本加载之前调用 GitBook – 将 API 调用包装在
script.onload或将它们放在脚本标签之后。无法访问需要认证的文档 – 如果您的文档需要登录,初始化时必须提供
visitor.token。参见 在认证文档中使用.CORS 或 CSP 错误 – 确保您站点的内容安全策略允许从您的 GitBook 域加载脚本和 iframe。
小部件不可见 – 检查页面上其他元素的 z-index 冲突。小部件默认使用较高的 z-index。
忘记初始化 – 确保在使用其他方法之前调用
GitBook('init', { siteURL: '...' })。
最后更新于
这有帮助吗?