美文网首页Java 杂谈
JavaScript中的onmouseover事件和onmous

JavaScript中的onmouseover事件和onmous

作者: 佐半边的翅膀 | 来源:发表于2019-05-06 19:15 被阅读0次

    # JavaScript事件 #

    事件可以是浏览器行为,也可以是用户行为!

    网页中的每个元素都可以产生某些可以触发 JavaScript 函数的事件。比方说,我们可以在用户点击某按钮时产生一个 onClick 事件来触发某个函数。事件在 HTML 页面中定义。

    JavaScript中的 事件类型有很多种,比如:

    1、按钮的单击事件。

    2、鼠标悬浮在某个图片上,有着特殊效果。

    3、鼠标离开某个图片上,效果消失。

    4、使用键盘上某个键,后出现效果。

    5、等等……

    ## onmouseover事件 ##

    **onmouseover事件:指鼠标移动都某个指点的HTML标签上,会出现什么效果。**

    例如:

        var p = document.getElementById("p")  /*获取id名字为p的标签*/

        /* 给获取到的id添加事件 */

        p.onmouseover = function (){

        alert("鼠标已经移动上来!");

        }

    ## onmouseout事件 ##

    **onmouseout事件:指鼠标移出某个指点的HTML标签后,会出现什么效果。**

    例如:

        var p = document.getElementById("p")  /*获取id名字为p的标签*/

        /* 给获取到的id添加事件 */

        p.onmouseout = function (){

        alert("鼠标已经移出!");

        }

    **onmouseover和onmouseout事件结合案例:**

        <html>

        <head>

        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

        <title>下拉导航菜单素材-2</title>

        <style type="text/css">

             *{margin:0;padding:0;}

         ul,li{list-style: none;}

         #menuBox{width:1000px; margin:30px auto;background-color: #eeeeee;border:1px solid #cccccc;height:40px;line-height: 40px;}

         #nemus > li{float: left;}

         #nemus > li  a{display: block;width:140px;text-decoration: none;color: #000;text-align: center;}

         #nemus  li dl{border:1px solid #ccc;background-color: #eeeeee;width:138px;}

         #nemus  li dl dt{border-bottom: 1px solid #ccc;}

        </style>

            <script type="text/javascript">

                //要获取所有的li, 给每个li加上onmouseover ,onmouseout事件  

                // 鼠标滑过对应的li时,如果该li下有dl,则显示该li下的dl , 鼠标划出li时,隐藏页面上所有的dl  

                window.onload = function(){

                    //获取所有的li

                    var liArr = document.getElementById("nemus").getElementsByTagName("li");

                    console.log("li的个数:"+liArr.length);

                    //获取所有的dl 

                    var dlArr =  document.getElementById("nemus").getElementsByTagName("dl");

                    console.log("dl的个数:"+dlArr.length);

                    //遍历

                    for(var i=0;i<liArr.length;i++){

                        //每个li上,隐藏所有的dl,只显示当前li下的dl ,dl只有1个 

                        //  this.getElementsByTagName("dl") ,一组值 数组

                        //  ,取第一个dl  this.getElementsByTagName("dl")[0]   arr[0]

                        liArr[i].onmouseover = function(){

                            //判断当前的li下是否有dl 

                            if(this.getElementsByTagName("dl").length>0){

                                //遍历所有的dl,显示所有的dl

                                var subArr = this.getElementsByTagName("dl");

                                for(var j=0;j<subArr.length;j++ ){

                                    subArr[j].style.display="block";

                                }

                            }

                        };

                        //如果离开了li  ,隐藏页面上所有的dl  

                        liArr[i].onmouseout = function(){

                            //隐藏所有的dl  

                            for(var j=0;j<dlArr.length;j++){

                                dlArr[j].style.display="none";

                            }

                        };

                    }

                };

            </script>

        </head>

        <body>

        <div id="menuBox">

            <ul id="nemus">

           <li><a href="#">首页</a></li>

           <li >

           <a href="#">新闻</a>

           <dl style="display:none" >

           <dt><a href="#">国际要问</a></dt>

           <dt><a href="#">国内动态</a></dt>

           </dl>

           <dl style="display:none" >

           <dt><a href="#">紧急要问</a></dt>

           <dt><a href="#">社会动态</a></dt>

           </dl>

           </li>

           <li >

           <a href="#">游戏下载</a>

           <dl style="display:none">

           <dt><a href="#">射击小游戏</a></dt>

           <dt><a href="#">动作小游戏</a></dt>

           <dt><a href="#">单击小游戏</a></dt>

           <dt><a href="#">装扮小游戏</a></dt>

           </dl>

           <dl style="display:none" >

           <dt><a href="#">AAAAA</a></dt>

           <dt><a href="#">BBBBB</a></dt>

           </dl>

           </li>

           <li><a href="#">关于我们</a></li>

            </ul>

        </div>

        </body>

        </html>

    相关文章

      网友评论

        本文标题:JavaScript中的onmouseover事件和onmous

        本文链接:https://www.haomeiwen.com/subject/tkodoqtx.html