…">
当前位置:首页 > JavaScript

js实现九宫格

2026-03-01 01:43:10JavaScript

实现九宫格布局

使用CSS Grid可以轻松实现九宫格布局。Grid布局提供了强大的二维布局能力,适合创建复杂的网格结构。

<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>
</div>
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
  width: 300px;
  height: 300px;
}

.grid-item {
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}

动态生成九宫格

使用JavaScript动态创建九宫格元素:

js实现九宫格

const container = document.createElement('div');
container.className = 'grid-container';

for (let i = 1; i <= 9; i++) {
  const item = document.createElement('div');
  item.className = 'grid-item';
  item.textContent = i;
  container.appendChild(item);
}

document.body.appendChild(container);

添加交互功能

为九宫格添加点击事件处理:

js实现九宫格

const items = document.querySelectorAll('.grid-item');
items.forEach(item => {
  item.addEventListener('click', () => {
    item.style.backgroundColor = '#ccc';
    console.log(`Clicked item ${item.textContent}`);
  });
});

响应式九宫格

使九宫格适应不同屏幕尺寸:

@media (max-width: 600px) {
  .grid-container {
    grid-template-columns: repeat(2, 1fr);
    width: 200px;
    height: 450px;
  }
}

@media (max-width: 400px) {
  .grid-container {
    grid-template-columns: 1fr;
    width: 100px;
    height: 900px;
  }
}

动画效果

为九宫格添加悬停动画:

.grid-item {
  transition: transform 0.3s, background-color 0.3s;
}

.grid-item:hover {
  transform: scale(1.1);
  background-color: #ddd;
}

这些方法提供了从基础布局到交互功能的完整实现方案,可以根据具体需求进行调整和扩展。

标签: 九宫格js
分享给朋友:

相关文章

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js实现百叶窗

js实现百叶窗

使用CSS和JavaScript实现百叶窗效果 通过CSS动画和JavaScript事件监听可以实现百叶窗效果。核心思路是将内容区域分割为多个条状元素,通过控制它们的展开/折叠状态来模拟百叶窗。…

js树实现

js树实现

树的基本概念 树是一种非线性的数据结构,由节点和边组成。每个节点包含一个值和指向子节点的引用。树的顶部节点称为根节点,没有子节点的节点称为叶节点。 树的实现方式 在JavaScript中,树可以通过…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js实现左右滑动

js实现左右滑动

实现左右滑动的 JavaScript 方法 监听触摸事件 通过 touchstart、touchmove 和 touchend 事件来检测用户的手势操作。记录触摸的起始位置和移动距离,判断滑动方向。…

js 实现超链接

js 实现超链接

使用 HTML 的 <a> 标签 在 JavaScript 中动态创建超链接可以通过操作 DOM 实现。通过 document.createElement 创建一个 <a> 元…