【JS】事件与节点属性

121 阅读2分钟

本文已参与[新人创作礼]活动,一起开启掘金创作之路。

哈喽,大家好!我是Why,一名在读学生,目前刚刚开始进入自己的编程学习生涯。虽然学习起步较晚,但我坚信做了才有0或1的可能。学了一段时间以后也是选择在掘金上分享自己的日常笔记,也希望能够在众多道友的大家庭中打成一片。 本文主要讲解*【JS】事件与节点属性*,如果大家读后觉得有用的话,还请大家多多支持博主:欢迎 ❤️点赞👍、收藏⭐、留言💬 ✨✨✨个人主页:JinHuan

事件

 blur失去焦点    
 focus获得焦点
 ​
 click鼠标单击
 dblclick鼠标双击
 ​
 keydown键盘按下
 keyup键盘弹起
 ​
 mousedown鼠标按下
 mouseover鼠标经过
 mousemove鼠标移动
 mouseout鼠标离开
 mouseup鼠标弹起
 ​
 reset表单重置
 submit表单提交
 ​
 change下拉列表选中项改变,或文本框内容改变
 select文本被选定
 load页面加载完毕(整个HTML页面中所有的元素全部加载完毕之后发生。)
 ​
 任何一个事件都会对应一个事件句柄,事件句柄是在事件前添加on。
 onXXX这个事件句柄出现在一个标签的属性位置上。(事件句柄以属性的形式存在。)

设置节点的属性

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <title>JS代码设置节点的属性</title>
     </head>
     <body>
         
         <script type="text/javascript">
             window.onload = function(){
                 document.getElementById("btn").onclick = function(){
                     var mytext = document.getElementById("mytext");
                     // 一个节点对象中只要有的属性都可以"."
                     mytext.type = "checkbox";
                 }
             }
         </script>
         
         <input type="text" id="mytext"/>
         
         <input type="button" value="将文本框修改为复选框" id="btn"/>
         
     </body>
 </html>
 ​

捕捉回车键

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <title>JS代码捕捉回车键</title>
     </head>
     <body>
         <script type="text/javascript">
             window.onload = function(){
                 var usernameElt = document.getElementById("username");
                 // 回车键的键值是13
                 // ESC键的键值是27
                 /*
                 usernameElt.onkeydown = function(a, b, c){
                     // 获取键值
                     // alert(a); // [object KeyboardEvent]
                     // alert(b);
                     // alert(c);
                 }
                 */
                /*
                usernameElt.onkeydown = function(event){
                 // 获取键值
                 // 对于“键盘事件对象"来说,都有keyCode属性用来获取键值.
                 alert(event.keyCode);
                }
                */
               usernameElt.onkeydown = function(event){
                   if(event.keyCode === 13){
                       alert("正在进行验证....");
                   }
               }
               
             }
             
             // 张三程序员写了这样一个函数
             /*
             function sum(){
                 alert("sum execute......!");
             }
             */
            
            /*
            function sum(a){
             // alert("sum execute......!");
             alert(a);
            }
             
             // 李四程序员调用sum函数
             // sum();
             sum("hello world!");
             */
         </script>
         
         <input type="text" id="username"/>
         
     </body>
 </html>

void运算符

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <title>JS的void运算符</title>
     </head>
     <body>      
         <!--
             void运算符的语法:void(表达式)
             运算原理:执行表达式,但不返回任何结果。
                 javascript:void(0)
                 其中javascript:作用是告诉浏览器后面是一段JS代码。
                 以下程序的javascript:是不能省略的。
         -->
         <a href="javascript:void(0)" onclick="window.alert('test code')">
             既保留住超链接的样式,同时用户点击该超链接的时候执行一段JS代码,但页面还不能跳转。
         </a>
         
         <br>
         
         <a href="javascript:void(100)" onclick="window.alert('test code')">
             既保留住超链接的样式,同时用户点击该超链接的时候执行一段JS代码,但页面还不能跳转。
         </a>
         
         <br>
         
         <!--void() 这个小括号当中必须有表达式-->
         <!--
         <a href="javascript:void()" onclick="window.alert('test code')">
             既保留住超链接的样式,同时用户点击该超链接的时候执行一段JS代码,但页面还不能跳转。
         </a>
         -->
         
         <br><br><br>
     </body>
 </html>
 ​

控制语句

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <title>JS的控制语句</title>
     </head>
     <body>
         <script type="text/javascript">
             /*
                 1、if
                 2、switch
                 
                 3、while
                 4、do .. while..
                 5、for循环
                 
                 6、break
                 7、continue
                 
                 8、for..in语句(了解)
                 9、with语句(了解)
             */
            // 创建JS数组
            var arr = [false,true,1,2,"abc",3.14]; // JS中数组中元素的类型随意.元素的个数随意.
            // 遍历数组
            for(var i = 0; i < arr.length; i++){
                alert(arr[i]);
            }
            
            // for..in
            for(var i in arr){
                //alert(i);
                alert(arr[i]);
            }
            
            // for..in语句可以遍历对象的属性
            User = function(username,password){
                this.username = username;
                this.password = password;
            }
            
            var u = new User("张三", "444");
            alert(u.username + "," + u.password);
            alert(u["username"] + "," + u["password"]);
            
            for(var shuXingMing in u){
                //alert(shuXingMing)
                //alert(typeof shuXingMing) // shuXingMing是一个字符串
                alert(u[shuXingMing]);
            }
            
            alert(u.username);
            alert(u.password);
            
            with(u){
                alert(username + "," + password);
            }
            
         </script>
     </body>
 </html>
 ​
 <!--
     public class Test{
         public static void main(String[] args){
             int[] arr = {1,2,3,4,5,6};
             int[] arr2 = new int[5]; // 等同于:int[] arr2 = {0,0,0,0,0};
             String[] arr3 = {"a","b","c"};
             String[] arr4 = new String[3]; // 等同于:String[] arr4 = {null,null,null};
         }
     }
 -->
 ​