属性和元标记
﹟ 数据属性
可以将以下数据属性应用于元素以自定义 Turbo 的行为。
data-turbo="false"
禁用链接和表单(包括子代)上的 Turbo Drive。要在祖先退出时重新启用,请使用data-turbo="true"
。请注意:当 Turbo Drive 被禁用时,浏览器将链接点击视为正常,但 原生适配器 可能会退出应用程序。data-turbo-track="reload"
跟踪元素的 HTML,并在其更改时执行完整页面重新加载。通常用于 使script
和 CSSlink
元素保持最新。data-turbo-frame
标识要导航的 Turbo Frame。有关更多详细信息,请参阅 Frames 文档。data-turbo-preload
向 Drive 发出信号,以预取下一页的内容data-turbo-action
自定义 访问 操作。有效值为replace
或advance
。还可与 Turbo Frames 一起使用,将 frame 导航提升为页面访问。data-turbo-permanent
在页面加载之间保留元素。该元素必须具有唯一的id
属性。它还用于在使用 变形页面刷新 时将元素排除在外data-turbo-temporary
在缓存文档之前删除元素,防止其在恢复时重新出现。data-turbo-eval="false"
阻止在访问时重新评估内联script
元素。data-turbo-method
将链接请求类型从默认的GET
更改。理想情况下,应使用表单触发非GET
请求,但当无法使用表单时,data-turbo-method
可能有用。data-turbo-stream
指定链接或表单可以接受 Turbo Streams 响应。对于使用非GET
方法提交的表单,Turbo 自动请求流响应;data-turbo-stream
允许 Turbo Streams 也可与GET
请求一起使用。data-turbo-confirm
使用给定值显示确认对话框。可用于form
元素或带有data-turbo-method
的链接。data-turbo-submits-with
指定在提交表单时要显示的文本。可以在input
或button
元素上使用。在提交表单时,元素的文本将显示data-turbo-submits-with
的值。提交后,将还原原始文本。通过在操作进行中时显示“保存中……”等消息,可为用户提供反馈,这一点非常有用。data-turbo-prefetch="false"
禁用 悬停时预取链接
﹟ 自动添加的属性
Turbo 会自动添加以下属性,这些属性可用于确定特定时刻的访问状态。
- 在表单请求进行中时,会向表单提交者添加
disabled
,以防止重复提交。 - 在访问期间显示 预览 时,会向
html
元素添加data-turbo-preview
。 - 在访问期间,会向
html
元素添加data-turbo-visit-direction
,其值为forward
或back
或none
,以指示其方向。 - 在导航进行中时,会向
html
和turbo-frame
元素添加aria-busy
。
﹟ 元标记
添加到 head
的以下 meta
元素可用于自定义缓存和访问行为。
<meta name="turbo-cache-control">
可 退出缓存。<meta name="turbo-visit-control" content="reload">
将在 Turbo 导航到页面时执行完整的页面重新加载,包括请求源自<turbo-frame>
的情况。<meta name="turbo-root">
可 将 Turbo Drive 的作用域限定到特定根位置。<meta name="view-transition" content="same-origin">
可在支持 视图转换 API 的浏览器上触发视图转换。<meta name="turbo-refresh-method" content="morph">
将配置 使用变形进行页面刷新。<meta name="turbo-refresh-scroll" content="preserve">
将启用 在页面刷新期间保留滚动。