You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Microsoft Fabric UI如何让toggle按钮页面加载时默认处于ON状态

你手动给label加is-selected类会被初始化逻辑清除,是因为Fabric UI的Toggle组件初始化时,会以关联的<input type="checkbox">的checked状态为基准自动同步label的类名,不会读取你预先写在label上的类,可通过以下两种方案实现默认开启效果:

方案1:原生HTML属性配置(最简单)

直接给<input>标签添加原生checked属性即可,组件初始化时会自动识别这个状态,给对应label加上is-selected类:

<div class="ms-Toggle">
  <span class="ms-Toggle-description">Let apps use my location</span> 
  <!-- 新增checked属性 -->
  <input type="checkbox" id="demo-toggle-3" class="ms-Toggle-input" checked />
  <label for="demo-toggle-3" class="ms-Toggle-field" tabindex="0">
    <span class="ms-Label ms-Label--off">Off</span> 
    <span class="ms-Label ms-Label--on">On</span> 
  </label>
</div>

无需修改原有JS初始化逻辑,修改后刷新页面即可看到toggle默认处于开启状态。

方案2:JS实例化时传参配置

如果需要通过JS动态控制默认状态,也可以在实例化Toggle组件时传入配置参数,指定默认选中:

var ToggleElements = document.querySelectorAll(".ms-Toggle");
for (var i = 0; i < ToggleElements.length; i++) {
  // 第二个参数传入配置,指定默认选中
  new fabric['Toggle'](ToggleElements[i], {
    checked: true
  });
}

该方式也不需要给label手动加is-selected类,组件会自动同步状态。

内容的提问来源于stack exchange,提问作者user16953756

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:27:01