当前位置:首页 > JavaScript

js dom实现

2026-04-05 17:08:12JavaScript

DOM 基本概念

DOM(Document Object Model)是浏览器提供的编程接口,用于操作 HTML 和 XML 文档的结构。通过 DOM,可以动态修改页面内容、结构和样式。

获取 DOM 元素

通过 ID 获取元素:

const element = document.getElementById('elementId');

通过类名获取元素集合:

const elements = document.getElementsByClassName('className');

通过标签名获取元素集合:

const elements = document.getElementsByTagName('div');

通过 CSS 选择器获取元素:

const element = document.querySelector('#id .class');
const elements = document.querySelectorAll('.class');

修改 DOM 元素

修改元素内容:

element.textContent = '新文本内容';
element.innerHTML = '<strong>加粗文本</strong>';

修改元素属性:

element.setAttribute('data-custom', 'value');
const value = element.getAttribute('data-custom');
element.removeAttribute('data-custom');

修改元素样式:

element.style.color = 'red';
element.style.backgroundColor = '#f0f0f0';

创建和添加 DOM 元素

创建新元素:

const newElement = document.createElement('div');
newElement.textContent = '新创建的元素';

添加元素到 DOM:

parentElement.appendChild(newElement);
parentElement.insertBefore(newElement, referenceElement);

事件处理

添加事件监听器:

element.addEventListener('click', function(event) {
  console.log('元素被点击');
});

移除事件监听器:

function handleClick() {
  console.log('点击事件');
}
element.addEventListener('click', handleClick);
element.removeEventListener('click', handleClick);

常用 DOM 操作

获取和设置表单值:

const inputValue = document.querySelector('input').value;
document.querySelector('input').value = '新值';

遍历子元素:

const children = parentElement.children;
for (let i = 0; i < children.length; i++) {
  console.log(children[i]);
}

性能优化建议

批量修改 DOM:

const fragment = document.createDocumentFragment();
for (let i = 0; i < 100; i++) {
  const li = document.createElement('li');
  li.textContent = '项目 ' + i;
  fragment.appendChild(li);
}
document.getElementById('list').appendChild(fragment);

使用事件委托:

js dom实现

document.getElementById('parent').addEventListener('click', function(event) {
  if (event.target.matches('li')) {
    console.log('列表项被点击');
  }
});

标签: jsdom
分享给朋友:

相关文章

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的HT…

js实现图片上传

js实现图片上传

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现图片上传功能。HTML部分需要创建一个文件选择输入框和一个用于…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

js实现祖玛

js实现祖玛

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

js树实现

js树实现

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

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码 funct…