1.BOM
1.window对象
1.location
1.location.href
2.location.href='地址' --->跳转
3.location.reload() --->重新加载
2.计时器:
1.一段时间后做什么事.
1.setTimeout('JS语句',毫秒)
2.clearTimeoutl()
2.每隔一段时间做什么
1.setInterval('JS语句',毫秒)
2.clearInterval()
2.DOM
1.查找标签
1.直接查找
1.document.getElementById() -- 根据ID标签查找
2.document.getElementByClassName() -- 根据class属性查找
3.document.getElementByTagName() -- 根据标签名获取标签集合
.间接查找
1.parentElement --- 父标签标签元素
2.children --- 所有的子标签
2.文档的操作
1.创建标签
1.var s1Ele = document.createElement('option')
3.文档内容
1.innerText
2.innerHTML --> 可以认识HTML标签
4.获取用户输入标签的值 (input/select/textarea)
1.value
5.样式的操作
1.classList
1.add
2.remove
3.contains
4.toggle
2.直接操作style
1.obj.style.backgroundColor = 'red'
6.时间
1.绑定方式
1.直接在HTML中写属性
2.使用JS绑定事件
常用事件
onclick 当用户点击某个对象时调用的事件句柄。
ondblclick 当用户双击某个对象时调用的事件句柄。
onfocus 元素获得焦点。 // 练习:输入框
onblur 元素失去焦点。 应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.
onchange 域的内容被改变。 应用场景:通常用于表单元素,当元素内容被改变时触发.(select联动)
onkeydown 某个键盘按键被按下。 应用场景: 当用户在最后一个输入框按下回车按键时,表单提交.
onkeypress 某个键盘按键被按下并松开。
onkeyup 某个键盘按键被松开。
onload 一张页面或一幅图像完成加载。
onmousedown 鼠标按钮被按下。
onmousemove 鼠标被移动。
onmouseout 鼠标从某元素移开。
onmouseover 鼠标移到某元素之上。
onselect 在文本框中的文本被选中时发生。
onsubmit 确认按钮被点击,使用的对象是form。
计时器例子
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>计时器示例</title>
<!--<script>-->
<!--// var i1Ele = document.getElementById('i1')-->
<!--// alert(i1Ele)-->
<!--//当文档加载完之后才执行-->
<!--var i1Ele = document.getElementById('d1');-->
<!--alert(d1Ele.innerText)-->
<!--</script>-->
</head>
<body>
<input type="text" id="i1">
<input type="button" id="start" value="开始">
<input type="button" id="stop" value="结束">
<div id="d1">傻逼</div>
<script>
// var i1Ele = document.getElementById('d1');
// alert(d1Ele.innerText)
//把当前事件塞到I1标签中
function setTime(){
//1找到标签
var i1Ele = document.getElementById('i1')
//2拿到当前时间
var now = new Date()
//3设置i1标签的value属性为now时间
i1Ele.setAttribute('value',now.toLocaleString())
}
setTime();
//定义一个存放计时器ID的全局变量
var t;
//点击开始按钮,让i1标签中的时间动起来
//1.找到开始按钮,绑定点击事件
var startBtn = document.getElementById('start');
startBtn.onclick = function() {
//要做的事
if(t === undefined){
//一秒钟执行一次设置value动作
t = setInterval(setTime,1000);}
}
//点击结束按钮,终止设置时间的定时任务
//找到结束按钮,绑定点击事件
var stopBtn = document.getElementById('stop');
stopBtn.onclick = function(){
//清除上面的定时器
clearInterval(t);
t = undefined
}
</script>
</body>
</html>
事件例子
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>两个select联动</title>
</head>
<body>
<select id="s1">
<option value="">请选择省</option>
</select>
<select id="s2">
</select>
<script>
var data = {
'广东省': ['广东市', '深圳市', '惠州'], '北京': ['朝阳区', '海定区']
, '山东': ['威海', '大连']
}
var s1Ele = document.getElementById('s1');
//页面一刷新,把所有的省加载到第一个select标签内
for (var i in data) {
console.log(i);
//创建一个option
var op = document.createElement('option');
// 设置文本
op.innerText = i;
// 把创建好的标签塞到第一个select标签内部
s1Ele.appendChild(op);
//给第一个select标签绑定一个值发生变化的事件
var s2Ele = document.getElementById('s2');
s1Ele.onchange = function () {
//获取当前select选中的值
var value = s1Ele.value;
//1去data里找对应的地区信息
var data2 = data[value];
//2清空第二个select标签的内容
s2Ele.innerText = '';
//3把对应的地区信息追加到第二个select标签内
for (var j = 0; j < data2.length; j++) {
var op = document.createElement('option');
//设置文本
op.innerText = data2[j]
//把创建好的标签塞到第二个select标签中
s2Ele.appendChild(op);
}
}
}
</script>
</body>
</html>