- A+
所属分类:Web前端
JavaScript中的DOM和Timer基本操作
DOM操作
传统的选择器
选择器id
var elements = document.getElementById(id的名称);
例如:
var elements = document.getElementById("test");
选择id为test的标签
选择器class
var elements = document.getElementsByClassName(class的名称);
例如:
var elements = document.getElementsByClassName("test");
选择class为test的标签
选择器标签名
var elements = document.getElementsByTagName(标签名);
例如:
var elements = document.getElementsByClassName("p");
选择p标签(传回数组)
包罗万象的select(css)选择器(H5)
简单的选择格式 .id #class 标签名 [属性]
单选
var element = document.querySelector(css选择的格式);
例如:
var elements = document.querySelector("a[target]");
选择一个a标签的target属性
多选
var element = document.querySelectorAll(css选择的格式);
例如:
var elements = document.querySelectorAll("#title");
选择所有class为title的属性
标签元素的操作
修改标签文本内容(以文本的方式输出)
element.textContent = 文本内容;
例如:
element.textContent = "hello";
把该标签的文本内容改为hello
修改标签文本内容(以html的方式输出)
element.innerHTML = 替换的html代码;
例如:
element.textContent = "<h1>hello</h1>";
把该标签位该为<h1>hello</h1>
获取同级,父子元素
//获取父元素: var parent = element.parentNode; //获取子元素: var child = element.children; //获取同级上一个元素: var previous = element.previousElementSibling; //获取同级下一个元素: var next = element.nextElementSibling;
修改元素类名id名
//修改id名 //修改类名 element.className = "new-class"; //修改id名 element.id = "new-id";
对元素样式进行修改(css相同):
列举几个(其他的样式同理)
//修改宽高背景颜色 element.style.backgroundColor = "red"; element.style.width = "200px"; element.style.height = "100px"; //......
EVENT操作(两种方式,以点击为例)
一:调用事件处理器
···javascript
element.事件处理器 = 事件回调函数;
例如: ···javascript element.onclick = function() { //你要执行的事件 console.log("Clicked!"); };
二:调用事件函数
···javascript
element.addEventListener(事件名,事件的回调函数);
例如: ···javascript element.addEventListener("click",function(){ //你要执行的事件 console.log("Clicked!"); });
ps:调用事件处理器可能出现事件覆盖的情况,建议第二种
timer定时器
延时定时器
执行时延时一定的时间才开始执行
setTimeout(回调函数,延时时间(ms));
例如:
setTimeout(function() { console.log("Timeout!"); }, 1000);
间隔定时器
每隔一定的时间执行一次
启动定时器
setInterval(回调函数,延时时间(ms));
例如:
var timerid = setInterval(function() { console.log("Timeout!"); }, 1000);
关闭定时器
clearInterval(定时器id); ··· ```javascript clearInterval(timerid); ···