获取页面元素
为什么要获取页面元素
例如:我们想要操作页面上的某部分(显示/隐藏,动画),需要先获取到该部分对应的元素,才进行后续操作
根据id获取元素
var div = document.getElementById('main'); console.log(div); // 获取到的数据类型 HTMLDivElement,对象都是有类型的 // HTMLDivElement <-- HTMLElement <-- Element <-- Node <-- EventTarget
注意:由于id名具有唯一性,部分浏览器支持直接使用id名访问元素,但不是标准方式,不推荐使用。
根据标签名获取元素
var divs = document.getElementsByTagName('div'); for (var i = 0; i < divs.length; i++) { var div = divs[i]; console.log(div); }
根据name获取元素*
var inputs = document.getElementsByName('hobby'); for (var i = 0; i < inputs.length; i++) { var input = inputs[i]; console.log(input); }
根据类名获取元素
var mains = document.getElementsByClassName('main'); for (var i = 0; i < mains.length; i++) { var main = mains[i]; console.log(main); }
根据选择器获取元素
var text = document.querySelector('#text'); console.log(text); var boxes = document.querySelectorAll('.box'); for (var i = 0; i < boxes.length; i++) { var box = boxes[i]; console.log(box); }
总结
掌握 getElementById() getElementsByTagName() 了解 getElementsByName() getElementsByClassName() querySelector() querySelectorAll()
案例
1.点击按钮弹出对话框
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <input type="button" value="按钮" id="btn"> <script> var btnObj=document.getElementById("btn"); btnObj.onclick= function (){ alert("开始使用dom"); } </script> </body> </html>