# Icon crossfade switch

https://fieldbook.lizardi.mx/zh/components/icon-crossfade-switch

分类：输入控件
缩略图：https://fieldbook.lizardi.mx/thumbs/icon-crossfade-switch.webp

Icon crossfade switch：开关切换时，滑块图标以淡变和缩放动画变为另一图标。

## 框架

react、vue、svelte、astro、html

## 预览控件

这些控件会传给演示组件。默认值和限制描述的是预览；完整的属性接口请查看实现代码。

| 名称 | 类型 | 默认值 | 选项或限制 |
| --- | --- | --- | --- |
| label | text | Dark mode | 最多 40 个字符 |
| on | boolean | false | 元数据未列出其他限制。 |
| iconStyle | select | sun-moon | 选项：sun-moon、check-cross、dot-ring |
| accent | color | #7C5CFF | 元数据未列出其他限制。 |

## 使用说明

Icon crossfade switch 的预览采用「行内」布局，主题设置为「浅色/深色」。

### Icon crossfade switch 提供哪些框架版本？

Icon crossfade switch 提供 React、Vue、Svelte、Astro、HTML 版本。实时预览使用 React；以下代码观察仅针对 index.tsx。使用其他版本前，请确认其交互行为。

### Icon crossfade switch 有哪些依赖？

React 元数据列出的额外 npm 依赖为：motion。

### Icon crossfade switch 的代码中有哪些无障碍细节？

Icon crossfade switch 的 React 代码包含：属性与事件处理器（aria-checked、aria-hidden、aria-label）；显式角色（switch）。这些信息来自代码观察。请在组合后的页面中验证无障碍名称、焦点顺序和键盘行为。

### Icon crossfade switch 如何处理减少动态效果的偏好？

Icon crossfade switch 的 React 代码通过 useReducedMotion() 读取动态效果偏好。index.tsx 中随偏好变化的表达式：fade: reduce ? \{ duration: 0 \} : FADE；slide: reduce ? \{ duration: 0 \} : SLIDE。请启用减少动态效果，检查完整实现、共享样式和所选框架版本；这些观察不能证明所有动画都会停止。

## 通过 MCP 安装

连接客户端，调用 get_component 获取实现，再调用 get_install_command 获取安装说明。选择已列出的框架，将源代码集成到应用中并验证功能。

```json
{
  "tool": "get_component",
  "arguments": {
    "slug": "icon-crossfade-switch",
    "framework": "react"
  }
}
```

[面向智能体](https://fieldbook.lizardi.mx/zh/docs/agents)
[MCP](https://fieldbook.lizardi.mx/api/mcp)

## 相关开放组件

- [Latching square toggle](https://fieldbook.lizardi.mx/zh/components/latching-square-toggle)
- [Settings Toggle Row](https://fieldbook.lizardi.mx/zh/components/press-stretch-switch)
- [Sliding Thumb Switch](https://fieldbook.lizardi.mx/zh/components/sliding-thumb-switch)
- [Spring layout toggle](https://fieldbook.lizardi.mx/zh/components/spring-layout-toggle)
- [Check draw toggle](https://fieldbook.lizardi.mx/zh/components/check-draw-toggle)
- [Labeled toggle row](https://fieldbook.lizardi.mx/zh/components/labeled-toggle-row)
