js中元素获取的六种方式
通过id名获取元素
var btn=document.getElementById('id名称')
通过类名获取元素,因为类名是可以重复的,所以获取的是多个元素或一个元素,以数组的形式返回,成为伪数组
伪数组具有数组的性质如length,但是没有数组的方法,使用时可使用下标确定选择元素
var btn=document.getElementsByClassName('类名')
btn[0].onclick=function(){}
通过标签名获取元素,返回的也是数组
var btn=document.getElementsByTagName('标签名')
通过name获取元素
<input name='user' type='text'>input>
var btn=document.getElementsByName('name名字')
通过选择器querySelector获取元素,获取第一个
<div class='nav' id='abc'>div>
<div class='nav'> div>
//根据所选择的属性,使用对应符号
var btn=document.querySelector('#abc')
var btn=document.querySelector('.nav')//只能获取到一个盒子
通过选择器querySelectorAll获取元素,获取所有的
<div class='nav' id='abc'>div>
<div class='nav'> div>
var btn=document.querySelectorAll('.nav')//两个div都获取到
事件源:触发的元素
事件类型:鼠标事件 键盘事件 浏览器事件
事件的处理程序:触发元素相响应时执行的代码
事件源.事件类型=事件执行程序
随机点名程序
html
<div id="box">div>
<div class="box1">
<button id="btn">开始button>
div>
css
#box{
width: 100px;
height: 100px;
background-color: aqua;
margin: auto;
margin-top: 200px;
text-align: center;
line-height: 100px;
}
.box1{
text-align:center;
margin-top: 50px;
}
js
var box=document.getElementById('box')
var btn=document.getElementById('btn')
var nameArr=[]//放名字,放到数组中
//此处i为nameArr数组的下标,用随机数产生 *6为产生0~6的数
//如最小值不为0,需*(max-min)+min
var i=Math.round(Math.random()*6),j=1
var num=0
btn.onclick=function(){
num++
if(num%2==1){
this.innerHTML='停'
setInterval(function(){
i=Math.round(Math.random()*6)
console.log(i);
box.innerHTML=nameArr[i]
},10)//此处为刷新间隔,单位毫秒
}else{
clearInterval(j)
j++
this.innerHTML='开始'
}
}
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documenttitle>
head>
<body>
<div>
<img src="#" alt="一张图片">
div>
<div>
<button id="show">显示图片button>
<button id="change">改变大小button>
<button id="hide">隐藏图片button>
div>
body>
<script>
//获取元素
var img=document.querySelector('img')
var show=document.getElementById('show')
var change=document.getElementById('change')
var hide=document.getElementById('hide')
show.onclick=function(){
img.style.display='block'
img.src='../img/bg.gif'
}
change.onclick=function(){
// img.width=100
// img.height=100
//注意单位
img.style.width=100+'px'
img.style.height=200+'px'
img.style.border='1px solid red'
//双单词第二单词首字母大写
img.style.borderRadius='20px'
//通过类名改变宽高 会覆盖原有的类名
img.className='box'
}
hide.onclick=function(){
img.style.display='none'
}
script>
html>
二者都是改变元素中的文本信息,上面例子中有使用方法
不能识别富文本,些什么就改成什么
可以识别富文本,内容可以编译出来
box.innerText = ''
此处就会在box元素中显示一个