javascript - 在 getElementsByTagName 循环中操作标签
问题描述
我有一个document
带有许多<code>
标签的 HTML。我想删除<code>....</code>
,但不是他们的内容。乍一看
for (element of document.getElementsByTagName("code")) {
element.outerHTML = element.innerHTML;
}
看起来不错,但它只会替换所有其他 <code>
元素。那是因为元素操作与getElementsByTagName
.
如何解决这个问题?
解决方案
你有几个选择:
- 用于
querySelectorAll('code')
获取静态节点列表而不是活动节点列表getElementsByTagName
- 向后循环列表,直到您没有将下一个要触摸的元素移动到刚刚完成的位置。
推荐阅读
- python - Pandas:重新采样分类索引数据
- reactjs - 为什么 Redux-Toolkit 切片中没有调用我的操作
- swift - ForEach 中的 SwiftUI 按钮不会改变 foregroundColor
- python-3.x - Python:Tkinter 聊天应用程序 - 我想在消息周围画气泡
- android - 使用 eclipse 2020-09 创建 android 项目会导致错误的包树
- powershell - Powershell脚本不返回日文字符而是随机数字和字母
- javascript - 通过 Jquery 选择 Jquery HTML 附加数据
- python - 如何使 Tkinter 窗口静止
- javascript - JS 控制台 if...else 中的任何选项
- kotlin - Kotlin:使用 Nullability 注释 Java 库时设置默认值