当前位置:首页 > JavaScript

js实现列表效果

2026-04-07 11:08:46JavaScript

实现基础列表渲染

使用 document.createElement 动态创建列表元素,通过遍历数据生成列表项:

const data = ["Item 1", "Item 2", "Item 3"];
const ul = document.createElement("ul");
data.forEach(item => {
  const li = document.createElement("li");
  li.textContent = item;
  ul.appendChild(li);
});
document.body.appendChild(ul);

动态更新列表内容

通过数组操作更新 DOM,实现列表动态变化:

const list = document.querySelector("ul");
const newItem = document.createElement("li");
newItem.textContent = "New Item";
list.appendChild(newItem); // 添加新项
list.removeChild(list.firstChild); // 移除首项

添加交互事件

为列表项绑定点击事件,实现交互功能:

document.querySelectorAll("li").forEach(li => {
  li.addEventListener("click", () => {
    li.style.textDecoration = "line-through"; // 点击后添加删除线
  });
});

使用模板字符串优化

通过模板字符串批量生成列表 HTML 结构:

const items = ["Apple", "Banana", "Orange"];
const html = items.map(item => `<li>${item}</li>`).join("");
document.querySelector("ul").innerHTML = html;

实现排序功能

结合数组排序方法更新列表显示顺序:

const sortList = () => {
  const ul = document.querySelector("ul");
  const items = [...ul.children];
  items.sort((a, b) => a.textContent.localeCompare(b.textContent));
  ul.innerHTML = "";
  items.forEach(item => ul.appendChild(item));
};

虚拟列表优化(大数据量)

通过动态渲染减少 DOM 节点数量,提升性能:

js实现列表效果

const visibleItems = 10;
let startIndex = 0;
function renderChunk(data) {
  const chunk = data.slice(startIndex, startIndex + visibleItems);
  document.querySelector("ul").innerHTML = chunk.map(item => `<li>${item}</li>`).join("");
}
// 滚动时更新 startIndex 并重新渲染

标签: 效果列表
分享给朋友:

相关文章

uniapp 卡片效果

uniapp 卡片效果

uniapp 实现卡片效果的方法 使用 view 和 CSS 样式 通过 view 组件结合 CSS 样式可以快速实现卡片效果。设置圆角、阴影和边距来增强视觉层次感。 <view cl…

vue实现点选效果

vue实现点选效果

实现点选效果的基本思路 在Vue中实现点选效果通常涉及监听用户的点击事件,并通过动态绑定类名或样式来改变元素的外观。核心是利用Vue的响应式数据和事件绑定机制。 使用v-bind和v-on实现 通过…

vue实现传输列表

vue实现传输列表

Vue 实现传输列表 在 Vue 中实现传输列表功能,通常涉及两个列表之间的数据传递,用户可以通过按钮或拖拽操作将项目从一个列表移动到另一个列表。以下是实现传输列表的几种方法。 使用组件间数据传递…

vue实现效果更新

vue实现效果更新

Vue 实现效果更新的方法 Vue 提供了多种方式实现动态效果更新,主要依赖其响应式系统和生命周期钩子。以下是几种常见的方法: 数据绑定与响应式更新 Vue 的核心是数据驱动视图。通过修改数据,视图…

vue实现纵向列表

vue实现纵向列表

实现纵向列表的基本方法 在Vue中实现纵向列表可以通过v-for指令结合数组数据渲染。核心是利用循环遍历数据生成列表项,并设置CSS控制纵向排列。 <template> <di…

vue实现tab效果

vue实现tab效果

Vue 实现 Tab 效果的方法 使用动态组件和 v-if 通过 v-if 或 v-show 控制不同标签内容的显示与隐藏,结合点击事件切换当前激活的标签页。 <template>…