getelementbyid和标记名和类名

Raj*_*hta 4 javascript

我想知道如何使用纯javascript获取元素.

我的代码如下:

        <html>
             <body>
                 <div id="abc" class="xy"> 123 </div>
                <p id="abc" class="xyz"> 123 </p>
              <span id="foo" class="foo2"> foo3 </span>
             </body>
           </html>
Run Code Online (Sandbox Code Playgroud)

在这里,我想找到组合元素:

  1. find元素有id abc和tagname p
  2. find元素有id abc和classname xy
  3. find元素具有classname foo2和tagname span
  4. find元素有id abc和classname xy和tagname div

我知道每页不能使用多个ID.但在更糟糕的情况下,对不同的标签使用相同的ID是否可以?在HTML?

Nie*_*sol 8

您可以使用更多"高级"选择querySelectorAll.对于你的三个例子:

  1. document.querySelectorAll("p#abc")
  2. document.querySelectorAll(".xy#abc")
  3. document.querySelectorAll("span.foo2")

  • 只需确保注意浏览器支持:http://caniuse.com/queryselector与IE不是很好(还有什么是新的?大声笑) (3认同)