原生js有没有类似jquery .find方法
时间: 2024-03-09 12:20:24 浏览: 200
在原生 JavaScript 中,可以使用 `querySelectorAll` 方法来实现类似 jQuery 中 `.find` 的功能。该方法返回一个 NodeList 对象,包含与指定选择器组匹配的文档中的元素列表,可以使用 NodeList 提供的方法遍历和操作这些元素。示例代码如下:
```js
const parent = document.getElementById('parent');
const children = parent.querySelectorAll('.child');
```
上述代码中,`querySelectorAll` 方法在 `parent` 元素下查找所有类名为 `child` 的子元素,并将结果存储在 `children` 变量中。
相关问题
jquery.attr()兼容chrome问题
在使用 jQuery 的 attr() 方法时,可能会遇到兼容性问题,特别是在 Chrome 浏览器中。这是因为 Chrome 在处理 DOM 元素属性时有一些特殊的行为。
为了解决这个问题,可以尝试以下方法:
1. 使用 prop() 方法代替 attr() 方法。prop() 方法处理 DOM 元素属性时更加严格,更不容易出现兼容性问题。
2. 使用原生的 JavaScript 方法来设置和获取属性。例如,可以使用 element.getAttribute() 和 element.setAttribute() 方法来操作属性。
3. 在 jQuery 的 attr() 方法中添加第二个参数来指定属性的值。例如,可以使用 $(selector).attr('name', value) 来设置属性值。
4. 升级 jQuery 版本,最新版本的 jQuery 已经解决了这个问题。
希望这些方法能够帮助你解决问题。
iframe 原生js与jQuery 获取父窗、子窗的iframe(多个iframe,没有id没有name)
要通过原生JS和jQuery获取父窗口和子窗口中的iframe元素,可以使用以下方法:
1. 通过原生JS获取父窗口的iframe元素:
```javascript
var parentIframes = window.parent.document.getElementsByTagName('iframe');
```
2. 通过原生JS获取子窗口的iframe元素:
```javascript
var childIframes = window.frames[0].document.getElementsByTagName('iframe');
```
3. 通过jQuery获取父窗口的iframe元素:
```javascript
var parentIframes = $(window.parent.document).find('iframe');
```
4. 通过jQuery获取子窗口的iframe元素:
```javascript
var childIframes = $(window.frames[0].document).find('iframe');
```
阅读全文