当前位置:首页 > JavaScript

js原生实现 toggle

2026-02-02 22:16:05JavaScript

原生JavaScript实现Toggle功能

使用原生JavaScript实现toggle效果可以通过多种方式完成,以下是几种常见方法:

切换类名实现显示/隐藏

const element = document.getElementById('targetElement');
element.addEventListener('click', function() {
  this.classList.toggle('active');
});

CSS需配合定义.active样式,例如:

js原生实现 toggle

.active {
  display: none;
}

直接修改style属性

const btn = document.querySelector('.toggle-btn');
const box = document.querySelector('.box');

btn.addEventListener('click', function() {
  if (box.style.display === 'none') {
    box.style.display = 'block';
  } else {
    box.style.display = 'none';
  }
});

切换布尔值状态

js原生实现 toggle

let isVisible = true;
const toggleBtn = document.getElementById('toggleBtn');
const content = document.getElementById('content');

toggleBtn.addEventListener('click', () => {
  isVisible = !isVisible;
  content.style.visibility = isVisible ? 'visible' : 'hidden';
});

自定义数据属性实现

document.querySelector('[data-toggle]').addEventListener('click', (e) => {
  const target = document.querySelector(e.target.dataset.toggle);
  target.hidden = !target.hidden;
});

HTML结构示例:

<button data-toggle="#panel">切换</button>
<div id="panel">可切换内容</div>

实现开关式toggle

const toggleSwitch = document.createElement('input');
toggleSwitch.type = 'checkbox';
toggleSwitch.addEventListener('change', function() {
  console.log(this.checked ? '开启' : '关闭');
});
document.body.appendChild(toggleSwitch);

以上方法可根据具体需求选择使用,类名切换的方式更符合现代前端开发实践,便于维护和扩展样式。直接操作style属性适合简单快速的实现,而数据属性方式则更具语义化。

标签: jstoggle
分享给朋友:

相关文章

js实现vue

js实现vue

Vue.js 简介 Vue.js 是一个渐进式 JavaScript 框架,用于构建用户界面。其核心库专注于视图层,易于与其他库或现有项目整合。 实现 Vue.js 的基本步骤 安装 Vue.j…

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…

js实现换肤

js实现换肤

使用CSS变量实现换肤 通过CSS变量可以轻松实现主题切换功能。CSS变量在根元素中定义,通过JavaScript动态修改这些变量值。 :root { --primary-color: #349…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现求导

js实现求导

实现数值求导的方法 在JavaScript中实现求导通常采用数值方法,因为JavaScript不是符号计算语言。以下是常见的数值微分方法: 中心差分法 中心差分法提供较高精度的导数近似:…

js实现目录

js实现目录

实现目录的基本思路 在JavaScript中实现目录功能通常涉及以下几个核心步骤:解析文档中的标题元素(如h1-h6),动态生成目录结构,并添加交互逻辑(如点击跳转)。以下是具体实现方法: 解析标题…