jquery 两个元素交换位置
时间: 2023-11-29 18:03:34 浏览: 35
可以使用 jQuery 中的 `insertBefore()` 和 `insertAfter()` 方法来实现元素交换位置。
假设有两个元素 `elem1` 和 `elem2`,它们在 DOM 树中的位置分别为 `parent > elem1` 和 `parent > elem2`。要交换它们的位置,可以按照以下步骤进行操作:
1. 先将 `elem1` 插入到 `elem2` 的前面:
```javascript
elem1.insertBefore(elem2);
```
此时 DOM 树中的位置关系变为 `parent > elem1 > elem2`。
2. 再将 `elem2` 插入到 `elem1` 的前面:
```javascript
elem2.insertBefore(elem1);
```
此时 DOM 树中的位置关系变为 `parent > elem2 > elem1`。
代码示例:
```javascript
var elem1 = $('#elem1');
var elem2 = $('#elem2');
var parent = elem1.parent();
// 将 elem1 插入到 elem2 的前面
elem1.insertBefore(elem2);
// 将 elem2 插入到 elem1 的前面
elem2.insertBefore(elem1);
```
注意:这种方法只适用于要交换位置的两个元素在同一个父元素下,如果它们在不同的父元素下,需要先将其中一个元素移到另一个父元素下,再进行交换位置操作。