当前位置:首页 > JavaScript

js 实现ul

2026-03-14 18:53:28JavaScript

使用 JavaScript 动态创建 ul 列表

在 JavaScript 中,可以通过 DOM 操作动态创建 ul 列表并填充内容。以下是几种常见方法:

方法 1:直接操作 innerHTML

通过字符串拼接快速生成列表结构:

js 实现ul

const listItems = ['Item 1', 'Item 2', 'Item 3'];
const ul = document.createElement('ul');
ul.innerHTML = listItems.map(item => `<li>${item}</li>`).join('');
document.body.appendChild(ul);

方法 2:使用 appendChild

逐个创建 li 元素并添加到 ul

const data = ['Apple', 'Banana', 'Orange'];
const ul = document.createElement('ul');

data.forEach(text => {
  const li = document.createElement('li');
  li.textContent = text;
  ul.appendChild(li);
});

document.getElementById('container').appendChild(ul);

方法 3:使用 DocumentFragment

批量操作 DOM 时性能更优:

js 实现ul

const items = ['Red', 'Green', 'Blue'];
const fragment = document.createDocumentFragment();
const ul = document.createElement('ul');

items.forEach(item => {
  const li = document.createElement('li');
  li.textContent = item;
  fragment.appendChild(li);
});

ul.appendChild(fragment);
document.body.appendChild(ul);

方法 4:配合事件委托

为动态列表添加事件监听:

const ul = document.createElement('ul');
['Home', 'About', 'Contact'].forEach(text => {
  const li = document.createElement('li');
  li.textContent = text;
  ul.appendChild(li);
});

ul.addEventListener('click', (e) => {
  if (e.target.tagName === 'LI') {
    console.log('Clicked:', e.target.textContent);
  }
});

document.body.appendChild(ul);

方法 5:使用模板字符串

复杂列表结构的生成方式:

const products = [
  { name: 'Laptop', price: 999 },
  { name: 'Phone', price: 699 }
];

const ul = document.createElement('ul');
ul.innerHTML = products.map(p => `
  <li class="product">
    <span>${p.name}</span>
    <span>$${p.price}</span>
  </li>
`).join('');

document.body.appendChild(ul);

注意事项

  • 动态创建的列表如果是长期存在的,建议使用事件委托而非为每个 li 单独绑定事件
  • 大量数据渲染时建议使用文档片段(DocumentFragment)减少重绘次数
  • 现代前端框架(如React/Vue)通常有更高效的列表渲染机制

标签: jsul
分享给朋友:

相关文章

js实现验证码

js实现验证码

实现验证码的JavaScript方法 生成随机验证码 使用Math.random()生成随机字符串,结合数字和字母: function generateCaptcha() { const cha…

jquery js

jquery js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。它兼容多种浏览器,提供易于使用的 API,使开发者能够更高…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

vue实现js休眠

vue实现js休眠

实现 JavaScript 休眠的方法 在 Vue 中实现 JavaScript 休眠(延迟执行)可以通过以下方式实现。由于 JavaScript 本身没有内置的 sleep 函数,通常使用 Prom…

节流js实现

节流js实现

节流(Throttle)的实现原理 节流是一种限制函数执行频率的技术,确保函数在一定时间间隔内最多执行一次。适用于高频触发事件(如滚动、输入、窗口调整等)的场景。 基础实现方式 使用时间戳判断是否执…

js图片轮播的实现

js图片轮播的实现

基础图片轮播实现 使用HTML、CSS和JavaScript实现一个简单的图片轮播效果。HTML部分定义轮播容器和图片,CSS负责样式和过渡效果,JavaScript处理逻辑。 <div cl…