JavaScript与HTML之间的交互式事件

  1. onclick //鼠标点击元素
  2. onfocus
  3. onblur
  4. onmouseover //鼠标移到某元素之上
  5. onmouseout //鼠标从某元素移开
  6. onload页面加载时触发
  7. onchange域的内容改变时发生
  8. onsubmit//表单中的确认按钮被点击时发生
  9. //有事件一定有对应一个处理结果,用函数表示
  10. onresize//浏览器的尺寸发生改变
  11. onscroll //窗口滚动
  12. onchange事件支持的标签input,select,textarea

内联事件

  1. <button id="btn" onclick="go()">btn</button>
  1. /*内联事件
  2. */
  3. function go(){
  4. console.log("hello world")
  5. }

1.onmouseover:事件会在鼠标指针移动到指定的元素上时发生

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

image.png

2.onmouseout :事件会在鼠标指针移出指定的元素外时发生

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

image.png

3.onfoucs :事件在对象获得焦点时发生

  1. <input type="text" id="input">
  2. <script>
  3. var input=document.getElementById("input");
  4. input.onfocus=function(){
  5. input.style.backgroundColor="red"
  6. }
  7. </script>

image.png

4.onblur:事件会在对象失去焦点时发生

  1. <input type="text" id="input">
  2. <script>
  3. var input=document.getElementById("input");
  4. input.onblur=function(){
  5. input.style.backgroundColor="pink"
  6. }
  7. </script>

image.png

5.onload:事件会在页面或图像加载完成后立即发生

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

image.png

6.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. </script>

image.png——>image.png——>image.png

7.onresize:当窗口大小发生变化时触发

  1. //onresize,当窗口大小发生变化时触发
  2. window.onresize=function(){
  3. console.log(1);
  4. }

8.onscroll:当滚动滚动条时触发

  1. //当滚动滚动条时触发
  2. window.onscroll=function(){
  3. console.log(2);
  4. }

9.onsubmit:事件在表单提交时触发

  1. <form id="form" onsubmit="alert(1)">
  2. <p>
  3. 用户名:<input type="text" name="user">
  4. </p>
  5. <p>
  6. 密码:<input type="password" name="pwd">
  7. </p>
  8. <input type="submit">
  9. </form>

image.png

键盘事件与KeyCode属性

  1. onkeydown:用户按下一个键盘按键时发生
  2. onkeypress:在键盘按键按下并释放一个键时发生
  3. onkeyup:在键盘按键松开时发生
  4. keyCode:返回onkeypressonkeydownonkeyup事件触发的键的值的字符代码,或键的代码
  5. even.key:获取输入的值
  6. even.keyCode:获取输入值的值

10.onkeydown

  1. <input type="text" id="input">
  2. <script>
  3. //even.key:获取输入的值
  4. //even.keyCode:获取输入值的值
  5. var input=document.getElementById("input");
  6. input.onkeydown=function(even) {
  7. console.log(even.key)
  8. console.log(even.keyCode);
  9. if(even.keyCode==82) {
  10. console.log("放大招");
  11. }
  12. }
  13. </script>

image.pngimage.png

11.textarea文本区域

  1. <p>还可以输入<em id="em" style="color: red;">0</em>/10</p>
  2. <textarea id="txt" cols="30" rows="10"></textarea>
  3. <script>
  4. var txt=document.getElementById("txt");
  5. var em=document.getElementById("em");
  6. txt.onkeydown = function(){
  7. var length= this.value.length;
  8. if(length<=10) {
  9. em.innerHTML=this.value.length;
  10. }else {
  11. alert("超出限制");
  12. }
  13. }
  14. </script>