1.输入框

1-1 onchange

  1. 1-11
  2. <input type="text" id="input">
  3. <script>
  4. // 当输入框的内容发生改变的时候,触发
  5. var input=document.getElementById("input");
  6. input.onchange=function(){
  7. console.log("hello world")
  8. }
  9. // onresize窗口大小改变的时候,会触发
  10. window.onresize=function(){
  11. console.log(1)
  12. }
  13. // 窗口滚动的时候会触发
  14. window.onscroll=function(){
  15. console.log(2)
  16. }
  17. </script>
  18. 1-12 submit

1-2 onfoucs onblur(获取焦点 遗失焦点)

  1. <input id="app" type="text">
  2. <script>
  3. // onfocus 获取焦点
  4. // onblur 遗失焦点
  5. var app=document.getElementById("app");
  6. app.onfocus=function(){
  7. this.style.backgroundColor="green"
  8. }
  9. app.onblur=function(){
  10. this.style.backgroundColor="yellow"
  11. }
  12. </script>

2.鼠标

2-1 mouse

  1. <p id="p">hello world</p>
  2. <script>
  3. var p=document.getElementById("p");
  4. p.onmouseover=function(){
  5. this.style.backgroundColor="red"
  6. }
  7. p.onmouseout=function(){
  8. this.style.backgroundColor="blue"
  9. }
  10. </script>

3.节点事件

3-1 节点获取

  1. <!--1 元素节点
  2. 3 文本节点
  3. 2 属性节点 -->
  4. <!-- getAttributeNode() 获取节点属性
  5. firstChild获取第一个子节点 -->
  6. <p id="app">hello world</p>
  7. <script>
  8. var app=document.getElementById("app");
  9. var id=app.getAttributeNode("id");
  10. console.log(app.nodeType)//1
  11. console.log(app.firstChild.nodeType)//3
  12. console.log(id.nodeType)//2
  13. </script>

3-2获取元素节点

  1. <ul id="app">
  2. <li>hello world</li>
  3. <li>hello world</li>
  4. <li>hello world</li>
  5. <li>hello world</li>
  6. </ul>
  7. <script>
  8. var app=document.getElementById("app");
  9. var childs=app.childNodes;
  10. var arr=[];
  11. for(var i=0;i<childs.length;i++){
  12. if(childs[i].nodeType ==1){
  13. arr.push(childs[i])
  14. }
  15. }
  16. console.log(arr);//==1,li li li li
  17. //==3,text*5
  18. </script>

3-3 获取全部元素

  1. <ul id="app">
  2. <li>hello world</li>
  3. <li>hello world</li>
  4. <li>hello world</li>
  5. <li>hello world</li>
  6. </ul>
  7. <script>
  8. var app=document.getElementById("app");
  9. var childs=app.childNodes;
  10. // var children=app.children;
  11. console.log(childs)//全部元素text li text li text li text li text
  12. // console.log(children)//元素节点 li li li li

3-4 增加节点元素

  1. <div id="app"></div>
  2. <script>
  3. var app=document.getElementById("app");
  4. var p=document.createElement("p");
  5. var txt =document.createTextNode("hello world");
  6. p.appendChild(txt);
  7. app.appendChild(p);
  8. </script>

3-5 修改节点元素

  1. <ul id="app">
  2. <li>html</li>
  3. <li id="js">javascript</li>
  4. </ul>
  5. <script>
  6. // 给元素添加内容innerHTML
  7. /*
  8. parentNode.insertBefore(newNode,targetNode)
  9. */
  10. var app=document.getElementById("app");
  11. var js=document.getElementById("js") ;
  12. var li=document.createElement("li");
  13. li.innerHTML="vue";
  14. app.insertBefore(li,js);
  15. </script>

3-6 移除节点元素

  1. <div id="app">
  2. <div id="child">child</div>
  3. </div>
  4. <script>
  5. // removeChild()让从元素DOM树,渲染树上都消失
  6. var app=document.getElementById("app");
  7. var child =document.getElementById("child");
  8. app.removeChild(child);
  9. </script>

3-7 替换节点元素

  1. <div id="app">
  2. <div id="child">child</div>
  3. <!-- <p id="p">hello world</p> -->
  4. </div>
  5. <!-- 替换某个元素
  6. replaceChild(newNode,targetNode) -->
  7. <script>
  8. var app=document.getElementById("app");
  9. var child =document.getElementById("child");
  10. var p=document.createElement("p");
  11. p.innerHTML="hello world";
  12. app.replaceChild(p,child);
  13. </script>

3-8 克隆节点

  1. <div id="app">
  2. <div class="one">
  3. hello world
  4. </div>
  5. </div>
  6. <script>
  7. var app=document.getElementById("app");
  8. var one=document.getElementsByClassName("one")[0];
  9. var test=one.cloneNode(true);
  10. console.log(test);
  11. app.appendChild(test);
  12. </script>

4 点击事件

4-1 点击

  1. index.js
  2. window.onload=function(){
  3. var p=document.getElementById("p");
  4. p.onclick=function(){
  5. console.log("hello world")
  6. }
  7. }
  8. html
  9. <p id="p">hello world</p>

1-11 onchange

  1. <input type="text" id="input">
  2. <script>
  3. // 当输入框的内容发生改变的时候,触发
  4. var input=document.getElementById("input");
  5. input.onchange=function(){
  6. console.log("hello world")
  7. }
  8. // onresize窗口大小改变的时候,会触发
  9. window.onresize=function(){
  10. console.log(1)
  11. }
  12. // 窗口滚动的时候会触发
  13. window.onscroll=function(){
  14. console.log(2)
  15. }
  16. </script>

1-12 submit

  1. <form id="form" onsubmit="alert(1)">
  2. <p>用户名:<input type="text" name="user"></p>
  3. <p>密码:<input type="password" name="pwd"></p>
  4. <input type="submit" id="input">//点击提交,出现网页内容为1

4-2 onkey

  1. <input type="text" id="input">
  2. <script>
  3. var input=document.getElementById("input");
  4. input.onkeydown=function(event){
  5. console.log(event.keyCode)
  6. if(event.keyCode==82){
  7. console.log("放下")
  8. }
  9. }
  10. input.onkeypress=function(){
  11. console.log("press")
  12. }
  13. input.onkeyup=function(){
  14. console.log("放开")
  15. }
  16. </script> //输入r依次出现82 放下 press 放开

1-14 value

  1. <input type="text" id="input" value="hello world">
  2. <script>
  3. // element.value
  4. var input=document.getElementById("input");
  5. input.onkeyup=function(event){
  6. if(event.keyCode==13){
  7. console.log(this.value)
  8. }
  9. }
  10. </script>

1-15 文本字数限制

  1. <p>还可以输入<em id="em" style="color: aqua;">0</em> /150</p>
  2. <textarea name="" id="txt" cols="30" rows="10"></textarea>
  3. <script>
  4. var tex=document.getElementById("txt");
  5. var em=document.getElementById("em");
  6. txt.onkeydown=function(){
  7. var length=this.value.length;
  8. if(length<=30){
  9. em.innerHTML=this.value.length;
  10. }else{
  11. alert("只能输入30个字符")
  12. }
  13. }
  14. </script>//当字数超过30出现页面"只能输入30个字符"

1-16 全局列表

  1. var a=10;
  2. function go(){
  3. console.log("hello world")
  4. }
  5. // const window={
  6. // a:10,
  7. // go:function(){
  8. // console.log("hello world")
  9. // }
  10. // }
  11. // console.log(window.a);
  12. // window.go();
  13. console.log(a);
  14. go();//10 hello world

1-17 删除按钮

  1. <ul>
  2. <li>html <button>删除</button></li>
  3. <li>css <button>删除</button></li>
  4. <li>javascript <button>删除</button></li>
  5. </ul>
  6. <script>
  7. // parentNode --元素的父节点
  8. var btns=document.getElementsByTagName("button");
  9. for(var i=0;i<btns.length;i++){
  10. btns[i].onclick=function(){
  11. var temp=window.confirm("确定吗");
  12. if(temp){
  13. this.parentNode.style.display="none"
  14. }
  15. }
  16. }
  17. </script>

19.PNG

1-18 setTimeout

  1. // 超时调用 间隔一段时间触发,只会触发一次
  2. setTimeout(function(){
  3. console.log("hello world")
  4. },2000)
  5. // 间歇调用 每隔一段时间,就会触发
  6. setInterval(function(){
  7. console.log("1")
  8. },1000)

1-19 递归

  1. function show(){
  2. setTimeout (function(){
  3. console.log(1)
  4. show();
  5. },1000)
  6. }
  7. show()

1-20 setInterval

  1. <button id="btn">停止定时器</button>
  2. <script>
  3. /* 设置定时器的时候,会在window下挂载一个属性 */
  4. /*
  5. clearInterval() 清除定时器
  6. */
  7. var btn =document.getElementById("btn");
  8. var temp =setInterval(function(){
  9. console.log("2")
  10. },1000)
  11. btn.onclick=function(){
  12. clearInterval(temp);
  13. }
  14. </script>