DOM获取父元素下非最后一个元素的子元素
时间: 2023-08-24 18:09:44 浏览: 121
可以使用querySelectorAll方法结合CSS选择器实现:
```js
const parent = document.querySelector('.parent');
const children = parent.querySelectorAll('.child:not(:last-child)');
```
上述代码中,首先获取父元素`.parent`,然后使用`querySelectorAll`方法选择所有符合条件的子元素`.child`,并且排除最后一个子元素`:not(:last-child)`。最终得到的是一个NodeList对象,包含了所有符合条件的子元素。
相关问题
js获取子dom元素在父元素中的索引
要获取一个子元素在其父元素中的索引,可以使用以下代码:
```js
var parent = document.getElementById("parent");
var child = document.getElementById("child");
var index = Array.prototype.indexOf.call(parent.children, child);
```
其中,`parent` 是父元素的 DOM 对象,`child` 是子元素的 DOM 对象,`index` 是子元素在父元素中的索引。
这里使用了 `Array.prototype.indexOf` 方法,将 `parent.children` 转换成了一个类数组对象,然后在其中查找子元素的索引。注意,这个方法在旧版的 IE 浏览器中可能不支持,需要做兼容处理。
dom获取全部子元素
要获取DOM的全部子元素,可以使用以下方法:
1. 使用原生JavaScript:
- 使用`childNodes`属性可以获取DOM的所有子节点,包括空白节点。例如,`let cc = c.childNodes;`\[1\]
- 使用`children`属性可以获取DOM的所有子元素节点,不包括空白节点。例如,`let cc = c.children;`\[1\]
- 使用`firstChild`属性可以获取DOM的第一个子节点,包括空白节点。例如,`let first = c.firstChild;`\[1\]
- 使用`firstElementChild`属性可以获取DOM的第一个子元素节点,不包括空白节点。例如,`let first = c.firstElementChild;`\[1\]
- 使用`lastChild`属性可以获取DOM的最后一个子节点,包括空白节点。例如,`let last = c.lastChild;`\[1\]
- 使用`lastElementChild`属性可以获取DOM的最后一个子元素节点,不包括空白节点。例如,`let last = c.lastElementChild;`\[1\]
2. 使用jQuery:
- 使用`children()`方法可以返回DOM的所有直接子元素节点。例如,`$("dom").children();`\[3\]
- 使用`contents()`方法可以返回DOM的所有内容,包括节点和文本。例如,`$("dom").contents();`\[3\]
综上所述,以上是获取DOM全部子元素的方法。
#### 引用[.reference_title]
- *1* [4.DOM(三)1....全部子元素①空白c.childNodes②无空白c.children 3获取第一个和最后一个子元素](https://blog.csdn.net/lazylYYY/article/details/119572165)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [JS DOM获取 兄弟和子 元素节点](https://blog.csdn.net/qq_46275230/article/details/124235525)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [js获取dom元素的子元素,父元素,兄弟元素小记](https://blog.csdn.net/ClearLoveQ/article/details/89277575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文