var element = document.getElementById("idValue") //里面填写的是id值
1
console.dir(element) //打印我们返回的元素对象,更好的查看里面的属性和方法
根据标签名获取元素,返回带有指定标签名的对象的集合
1 2 3 4 5 6 7 8
var elements = document.getElementsByTagName('li') //以伪数组的形式存储的 for (var i = 0; i< elements.length; i++){ console.log(elements[i]) } //如果页面中只有一个元素,返回的还是伪数组的形式
var childElements = parentElement.getElementsByTagName('li') //根据父元素获取子类元素
HTML5新增方法获取元素
1
var element = document.getElementByClassName('类名')//根据类名返回元素对象集合
1
var element = document.querySelector('选择器') //根据指定选择器返回第一个元素对象(.类名)(#id名)(标签名)
1
var elements = document.querySelectorAll('标签名') //返回指定选择器的所有元素的集合
获取body,html元素
1 2
var bodyEle = document.body; //获取body元素 var htmlEle = document.documentElement//获取html元素对象
事件
JavaScript检测到的行为
(事件三要素)事件源 事件类型 事件处理程序
(1)事件源 事件被触发的对象
(2)事件类型 如何触发 什么事件 比如鼠标点击(onclick)还是鼠标经过 还是键盘按下
(3)事件处理程序 通过一个函数赋值的方式完成
1 2 3 4
var btn = document.getElementById('btn') btn.onclick = function (){ alert('触发') }
<button>按钮1</button> <button>按钮2</button> <button>按钮3</button> <button>按钮4</button> <button>按钮5</button> <button>按钮6</button> <script> //变量作用域,变量在什么范围内是可用的 { var name = 'zhangsan' console.log(name) } console.log(name) //外部也可以访问到
//2.没有会计作用域引起的问题:if的块级 var func; if (true) { var name = 'why' func = function(){ console.log(name) } } func() name = "abc" func()
//3.没有块级作用域引起的问题: for的块级 // var btns = document.getElementsByTagName('button') // //console.log(btns) // for(var i = 0; i < btns.length; i++){ // btns[i].addEventListener('click',function(){ // console.log('第'+i+'个按钮被点击') // }) // } //添加的点击事件全是最后一个按钮的点击事件
//使用let解决 var btns = document.getElementsByTagName('button') //console.log(btns) for(let i = 0; i < btns.length; i++){ btns[i].addEventListener('click',function(){ index = i + 1 console.log('第'+index+'个按钮被点击') }) } //添加的点击事件全是最后一个按钮的点击事件
let name = 'why'; let age = 18; let height = 1.88; const obj = { name, age, height } console.log(obj) let obj1 = { func(){ console.log('func函数被调用了') } } obj1.func()