请问querySelector如何获取指定元素的紧邻子元素, 表达式该如何写呢?

本以为el.querySelector('>.child').

运行后发现我想错了, 看了手册说是支持css选择器的, 不知道该如何写


补充一下:
这个el是动态获取的, 所以没法写在querySelector的表达式中, 'el>.child'是没法写的

暂时是循环获取的

    for (let $child of $el.childNodes) {
        if ('ripple-container' == $child.className) {
            $rippleContainerNode = $child;
            break;
        }
    }
阅读 9.8k
6 个回答

:scope表示当前元素

el.querySelector(':scope >.child');

vue 项目 可以通过绑定ref 来访问具体某个元素 你可以v-for 循环 ref 他的索引 访问几个 mesthods(index){} 大概这样思路

document.querySelector(selectors).firstChild;

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<p>这是一个 p 与元素。</p>
<p class="test">这也是一个 p 与元素。</p>
<p>点击按钮修改文档中第一个 p 元素的背景颜色。</p>
<button onclick="myFunction()">点我</button>
<script>
function myFunction() {

document.querySelector(".test").nextSibling.nextElementSibling.style.backgroundColor = "red";

}
</script>

</body>
</html>

el.querySelectorAll('.child')[0]

我也以为是el.querySelector('>.child'),所以楼主你解决这个问题了吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题