当前位置:首页 > JavaScript

js 实现tr互换

2026-03-15 15:17:57JavaScript

实现表格行互换的 JavaScript 方法

获取表格行元素

使用 document.querySelectorgetElementById 获取表格及目标行元素。例如:

const table = document.getElementById('myTable');
const rows = table.getElementsByTagName('tr');

交换行内容

通过临时变量存储行内容,再交换两行的 innerHTML

function swapRows(row1, row2) {
    const temp = row1.innerHTML;
    row1.innerHTML = row2.innerHTML;
    row2.innerHTML = temp;
}

交换行 DOM 节点

直接操作 DOM 节点实现位置交换:

function swapDomRows(row1, row2) {
    const parent = row1.parentNode;
    const next1 = row1.nextSibling;
    const next2 = row2.nextSibling;

    parent.insertBefore(row1, next2);
    parent.insertBefore(row2, next1);
}

事件绑定示例

通过按钮触发行交换:

document.getElementById('swapBtn').addEventListener('click', () => {
    swapRows(rows[1], rows[2]); // 交换第2行和第3行
});

动画效果增强

添加 CSS 过渡效果提升交互体验:

js 实现tr互换

tr {
    transition: all 0.3s ease;
}

注意事项

  • 确保行索引有效,避免越界错误
  • 如需保留事件监听器,建议采用 DOM 节点交换而非内容交换
  • 考虑添加边界条件检查(如行是否存在)

标签: jstr
分享给朋友:

相关文章

js实现拖拽

js实现拖拽

实现拖拽的基本步骤 通过监听鼠标事件(mousedown、mousemove、mouseup)实现拖拽功能。以下是核心代码逻辑: const draggableElement = document.…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…

js实现vr

js实现vr

使用WebXR API实现VR体验 WebXR是浏览器中实现VR和AR体验的标准API,它取代了早期的WebVR。现代浏览器如Chrome、Edge和Firefox已支持WebXR。 // 初始化W…

js树实现

js树实现

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

js图片上传实现

js图片上传实现

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API实现基础图片上传功能。HTML部分需要设置accept="image/…

实现继承js

实现继承js

实现继承的方式 在JavaScript中,实现继承可以通过多种方式完成,每种方式都有其优缺点。以下是几种常见的实现继承的方法: 原型链继承 原型链继承是最基本的继承方式,通过将子类的原型指向父类的实…