JavaScript 将节点移动到 lastChild 之后的位置
JavaScript move node to position after lastChild
我有一个排列脚本,可以在视觉上向上或向下移动元素(li
和 tr
等元素),但是当元素已经是第一个时,我需要让它出现在底部。我尝试使用正确的元素引用appendChild
但得到一个错误,因为我正在移动的元素已经是其父元素的子元素。我也尝试使用insertBefore
没有任何运气
没有框架。
那么假设我们s_parent
了父元素,我们想移动子元素s_move
并且s_parent
有四个子tr
元素,我们如何在s_parent.lastChild
之后移动s_move
?
var s_parent = document.getElementsByTagName('table')[0];
var s_move = t.getElementsByTagName('tr')[0];
在父节点上使用 Node.appendChild 方法:
s_parent.appendChild(s_move);
这将在父节点的最后一个子节点之后添加您的元素。
很高兴知道:
当使用vanilla JS操作DOM元素时,请注意模板系统或通过HTML标记中的手动缩进生成的可能文本节点。
压缩标记: <ul><li></li><li></li></ul>
-
ul.firstChild
是第一个li
- 第一个
li.nextSibling
是第二个li
但缩进标记:<ul> <li> </li> <li> </li> </ul>
-
ul.firstChild
#textNode
- 第一个
li.nextSibling
是#textNode
检查:
- 文档
- 压缩 HTML @JSBin的工作示例
你需要:https://developer.mozilla.org/en-US/docs/Web/API/Node.appendChild
在您的情况下:
s_parent.appendChild(s_move);
从文档中:
Node.appendChild() 方法将节点添加到指定父节点的子节点列表的末尾。如果给定的子节点是对文档中现有节点的引用,则 appendChild() 会将其从当前位置移动到新位置。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- Javascript删除数组中某个位置之后的项
- Skrollr:当滚动位置在最后一个关键帧之后时传递函数
- jQueryUI-将draggable移回原始位置,即使在放入dropable之后也是如此
- JavaScript 将节点移动到 lastChild 之后的位置
- 在使用可排序排序期间/之后显示使用 JSON 创建的列表中的项目位置
- 如何在窗口位置之后存储数据
- 将输入光标设置为javascript正则表达式之后的正确位置
- 文本区域标签高亮显示应用于第一行之后的错误位置
- 在.replace()之后恢复光标位置
- CodeMirror:如何在光标位置之前或之后读取编辑器文本
- 如何在window.open之后获得窗口位置
- 在单击add函数的位置之后添加另一行
- Windows位置不要在XMLHttpRequest之后重定向
- 限制在剑道UI树形视图之前和之后的下拉位置
- 内容可编辑分区-在.html()之后更新光标位置
- 在jQuery(document).ready()之后从外部位置运行javascript
- 在jQuery的slideUp之后保持相同的位置
- 谷歌位置自动补全-昨晚之后没有结果
- 三.在position.set()之后,光线投射器与原始网格位置相交