系统学习Javaweb8----JavaScript4(结束)

学习内容:

1.DOM对象

1.2DOM对象--元素对象常见属性

 

2.JS事件

2.1JS事件--入门案例

2.2JS事件--驱动机制

2.3常见JS事件--点击事件

2.4常见JS事件--点击事件

2.5常见JS事件--焦点事件

2.6常见JS事件--域内容改变事件

2.7常见JS事件--加载完毕事件

2.8常见JS事件--表单提交事件

2.9常见JS事件--键位弹起事件

2.9.*常见JS事件--常用鼠标事件

2.9.-JS事件绑定方式-元素事件句柄绑定.

2.9.+JS事件绑定方式-DOM绑定方式

 

学习内容:

4.3元素对象常见属性(HTML元素)

 

4.3.1、value

元素对象.value             获取元素对象的value属性值。

元素对象.value=属性值      设置元素对象的value属性值。

 

4.3.2、className

元素对象.className         获取元素对象的class属性值。

元素对象.className=属性值  设置元素对象的class属性值。

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

  <style>

    .ys1{

    color:red;

    }

    .ys2{

    color:blue;

    }

   

  </style>

</head>

<body>

    <input type="text" id="t1"  value="你好"/>

    <span id="s1" class="ys1">今天天气好晴朗</span>

   

    <script type="text/javascript">

      var t1=document.getElementById("t1");

      alert(t1.value);

      t1.value="你好嘛";

     

      var s1=document.getElementById("s1");

      alert(t1.className);

      s1.className="ys2";

     

     

    </script>

</body>

</html>

 

运行结果:

 

 

 

 

 

 

 

 

 

 

4.3.3、checked

元素对象.checked           获取元素的checked属性值

元素对象.checked=属性值    设置元素对象的checked属性

 

注:HTML中checked=“checked”,JavaScript中返回true

 

4.3.4、innerHTML

元素对象.innerHTML          获取元素对象的内容体

元素对象.innerHTML=值       设置元素对象的内容体

作用:操作元素的内容体。

 

5.JS事件

5.1、JS事件是什么?  有什么作用?

  通常鼠标或者热键的动作我们称之为事件(Event)

  (点击、表单提交、值发生变化、鼠标移入、鼠标移出。)

  通过JS事件,我们可以完成页面的指定特效。

 

5.2、JS驱动事件机制简述

  页面上的特效,我们可以理解在JS事件驱动机制下进行。

  JS驱动机制:                    例如:警察抓小偷

  事件源                          小偷

  事件                            小偷偷东西

  监听器                           警察

  注册/绑定监听器                  让警察时刻盯着小偷

 

  事件源:专门产生事件的组件

  事件:由事件源所产生的动作或者事情

  监听器:专门处理  事件源  所产生的时间

  注册/绑定监听器:让监听器时刻监听事件源是否有指定事件产生,如果事件源产生指定事件,则掉用监听器处理。

 

5.3、常见JS事件。

5.3.1、点击事件 onclick

点击事件:由鼠标或热键点击元素组件时触发。

例如:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

   <script type="text/javascript">

   function run1(){

       alert("提交成功!");

   }

   </script>

 

</head>

<body>

<input type="button"  value="点我啊" onclick="run1()"/>

</body>

</html>

   

 

 

 

 

5.3.2、焦点事件 onbulr    onfoucs

焦点:整个页面的注意力。

默认一个正常页面最多仅有一个焦点。

例如:文本框中闪烁的小竖线。

 

 

 

通常焦点也能反映出用户目前的关注点,或者正在操作的组件。

 

5.3.2.1、获取焦点事件

获取焦点事件:当元素组件获取焦点时触发。

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

   <script type="text/javascript">

   function run1(){

       alert("获取焦点成功");

   }

   </script>

 

</head>

<body>

<input type="text"  value="点击获取焦点" onfocus="run1()" />

</body>

</html>

 

 

 

 

 

 

5.3.2.2、失去焦点事件  onblur

失去焦点事件:元素组件失去焦点时触发。

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

   <script type="text/javascript">

   function run1(){

       alert("失去焦点了");

   }

   </script>

 

</head>

<body>

<input type="text"  value="点击其他地方失去焦点" onblur="run1()" />

</body>

</html>

 

 

 

 

 

5.3.3、域内容改变事件  onchange

域内容改变事件:元素组件的值发生改变时。

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

   <script type="text/javascript">

   function run1(){

       alert("对话框");

   }

   </script>

 

</head>

<body>

<select  onchange="run1()">

  <option value="bj">北京</option>

  <option value="sh">上海</option>

  <option value="tj">天津</option>

</select>

</body>

</html>

 

 

 

 

 

 

5.3.4、加载完毕事件  onload

加载完毕事件:元素组件加载完毕时触发。

获取元素对象,保证元素对象先加载,建议把获取元素对象代码放在最后,有了这个之后就不用了

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

   <script type="text/javascript">

   function run1(){

       alert("加载完毕");

   }

   </script>

 

</head>

<body onload="run1">

      你好

 

</body>

</html>

 

 

 

 

 

 

5.3.5、表单提交事件  onsubmit

表单提交事件:表单的提交按钮被点击时触发

 

注意:该事件需要返回boolean类型的值来执行  提交/阻止  表单数据的操作。

事件得到true,提交表单数据。

事件得到false,阻止表单数据提交。

<form onsubmit=”return hanshu()”></form>

 

 

示例:<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

 

   <script type="text/javascript">

   function run1(){

       alert("表单提交成功");

       return true;

   }

   </script>

 

</head>

<body >

 

         <form onsubmit="return run1()">

         <input type="text"  name="uname"/><br/>

         <input type="submit"  value="提交"/>

        

         </form>

 

</body>

</html>

 

5.3.6、键位弹起事件   onkeyup

键位弹起事件:当组件中输入某些内容时,键盘键位弹起时触发该事件。

 

5.3.7、常见鼠标事件

5.3.7.1鼠标移入事件   onmouseover

鼠标移入事件:鼠标移入某个元素组件时触发

 

 

5.3.7.2鼠标移出事件   onmouseout

鼠标移出事件:鼠标移出某个组件时触发。

 

5.4、JS事件的两种绑定方式。

5.4.1、元素事件句柄绑定

将事件以元素属性的方式写到标签内部,进而绑定对应函数。

 

示例1:为事件绑定一个无参函数。

看以前的例子。

 

示例2:为事件绑定一个有参函数,参数是一个字符串。

<input type="text"   onclick="run1('你好啊')"/><br/>

注意:双引号里面得是单引号

 

示例3:为事件绑定一个有参函数,函数是一个元素对象。

<input type="text"   value="111111"   onclick="run2(this)"/><br>

注意:用this指代这个元素即可。

 

 

示例2、3:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

 

   <script type="text/javascript">

   function run1(str){

       alert(str);

   }

   function run2(obj)

   {

       alert(obj.value);

   }

  

   </script>

 

</head>

<body >

 

         <input type="text"   onclick="run1('你好啊')"/><br/> 

<input type="text"   value="111111"   onclick="run2(this)"/><br>

      

</body>

</html>

 

示例四:绑定多个函数,且按顺序执行。

  <input type="text"   value="德玛西亚" onclick="run1('你好啊'),run2(this)"/><br/>

只需要依次用逗号隔开就行,写的顺序就是执行顺序。

 

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

 

   <script type="text/javascript">

   function run1(str){

       alert(str);

   }

   function run2(obj)

   {

       alert(obj.value);

   }

  

   </script>

 

</head>

<body >

 

         <input type="text"   value="德玛西亚" onclick="run1('你好啊'),run2(this)"/><br/>

      

      

 

</body>

</html>

 

事件句柄绑定方式

  优点:开发便捷

        传参方便

        可以绑定多个函数

  缺点:JS和HTML代码高度糅合在一起,不利于多部门开发维护。

 

5.4.2、DOM绑定方式

使用DOM事件的属性方式绑定事件。

两种写法:

1.  对象.事件属性    一次只能绑定一个函数,不能传递参数。

例如:window.onload=run1()

 

2.  匿名函数方式     可以绑定多个函数,可以传递参数。

例如:window.onload=function(){

     run1();

     run2();

     }

 

示例:

<html>

<head>

  <meta charset="UTF-8">

  <title>demo1</title>

 

   <script type="text/javascript">

     function run1()

     {

     alert("加载完毕");

     }

     window.onload=run1();

     window.onload=function(){

     run1();

     }

   </script>

 

</head>

<body>

     你好

</body>

</html>

 

posted @ 2020-02-05 10:42  Mr_WildFire  阅读(114)  评论(0编辑  收藏  举报