(n1, n2)
| 71 | |
| 72 | |
| 73 | function swapNodes(n1, n2) { |
| 74 | let p1 = n1.parentNode, |
| 75 | p2 = n2.parentNode, |
| 76 | i1, i2; |
| 77 | |
| 78 | if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return; |
| 79 | |
| 80 | i1 = index(n1); |
| 81 | i2 = index(n2); |
| 82 | |
| 83 | if (p1.isEqualNode(p2) && i1 < i2) { |
| 84 | i2++; |
| 85 | } |
| 86 | p1.insertBefore(n2, p1.children[i1]); |
| 87 | p2.insertBefore(n1, p2.children[i2]); |
| 88 | } |
| 89 | |
| 90 | export default SwapPlugin; |