获取元素
通过使用 getElementById() 方法
document.getElementById("intro");
通过使用 getElementsByTagName() 方法
document.getElementsByTagName("p");
//返回包含文档中所有 <p> 元素的列表,并且这些 <p> 元素应该是 id="main" 的元素的后代(子、孙等等):
document.getElementById("main").getElementsByTagName("p");
通过使用 getElementsByClassName() 方法
document.getElementsByClassName("intro");
通过使用querySelector()
document.querySelector("#demo");
通过document.querySelectorAll()获取所有的满足条件的元素,返回一个伪数组(拥有数组的属性,没有方法)
document.querySelectorAll(".example")
css样式
设置样式
document.getElementById(id).style. property = new style
eg:
//设置单个样式
document.querySelector('.content').style.border="1px solid red"
//设置多个样式cssText
document.querySelector('.content').style.cssText = "color: blue;width:10px";
设置类名
添加类名
document.classList.add('content','class2'...)
document.querySelector('div').classList.add('content')
HTMLElementObject.className=classname
document.querySelector('div').className='content'
//如果获取
document.querySelector('div').className
移除类名
document.classList.remove('class1','class2'...)
替换类名
document.classList.replace('class1(旧) ','class2(新) '...)
切换类名
document.classList. toggle(class, true|false)
说明:class:切换的样式,并返回true和false
true|false:可选参数,是个布尔值用于设置元素是否强制添加或移除类,不管该类名是否存在。
//即使没有这样的样式的时候,仍旧切换
document.getElementById("myDIV").classList.toggle("newClassName");
//有第二个参数时
//使用true来控制该类名必须存在,即使已经存在了,也会执行,但不会重复添加,返回true
//false来控制该类名不存在,即使不存在了,也会自信,但不会重复移除,返回false
获取元素类名
document.classList.item(index)
说明:
返回元素中索引值对应的类名。索引值从 0 开始,如果索引值在区间范围外则返回 null
判断指定的类名是否存在
document.classList.contains(class)
说明:
返回布尔值
字符串
substr():截取指定数目的字符
语法:
string.substr(start,length)
start: 必需。从第几个开始截取,开始截取的字符串下标。如果是负数,那就是从字符串的末尾开始算,也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
length: 可选。截取几个字符。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
例子:
var str="Hello world!";
var n=str.substr(2,3)
//输出
llo
indexOf():在字符串中查找指定字符串
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
需要注意的是 indexOf() 方法区分大小写
var str="Hello world, welcome to here";
var n=str.indexOf("world");
console.log(n) //6
事件
注册事件
- document.onclick //所有主要浏览器都支持 onclick 事件
- document.addEventListenner() // 所有浏览器,除了 IE 8 及更早IE版本
- document.attachEvent() // IE 8 及更早IE版本
移除事件
- document.onclick=null
- document.removeEventListener()
- document.detachEvent()
兼容性处理
//方案一:addEventListenner和attachEvent兼容性处理
if (document.addEventListener) {
document.addEventListener("mousemove", myFunction);
} else if (document.attachEvent) {
document.attachEvent("onmousemove", myFunction);
}
//方案二:使用onclick方法