jQuery事件

一.window事件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
        <script type="text/javascript" src="js/jQuery1.11.1.js"></script>
        <script type="text/javascript">
            $(function(){
                alert("1");
            })
            window.onload=function
        </script>
    </head>
    <body>
        <h1>New Web Project Page</h1>
    </body>
</html>

二.鼠标事件(光棒效果)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
        <script type="text/javascript" src="js/jQuery1.11.1.js"></script>
        <script type="text/javascript">
            $(function(){
                var aa=$("li");
                
                aa.mouseover(function(){
                    $(this).css("background","blue")
                })
                aa.mouseout(function(){
                    $(this).css("background","")
                })
            })
        </script>
    </head>
    <body>
        <ul>
            <li>呵呵</li>
            <li>嘻嘻</li>
            <li>哈哈</li>
        </ul>
    </body>
</html>

三.键盘事件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
        <script type="text/javascript" src="js/jQuery1.11.1.js"></script>
        <script type="text/javascript">
            $(function(){
                $("input").keyup(function(event){
                    var co=event.keyCode;
                    alert(co);
                })
            })
        </script>
    </head>
    <body>
        <h1>呵呵</h1>    
        <input />
    </body>
</html>

四.表单事件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
        
        <script type="text/javascript" src="js/jQuery1.11.1.js"></script>
        <script type="text/javascript">
            $(function(){
                $("input").focus(function(){
                    $("span").addClass("myred")
                });
                $("input").blur(function(){
                    $("span").removeClass("myred")
                });
            });
        </script>
    </head>
    <body>
        <h1>呵呵</h1>    
        <input /><span >啊啊啊啊啊啊</span><br />
        <input /><span >啊啊啊啊啊啊</span>
    </body>
</html>

五.绑定 解除

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>New Web Project</title>
        <script type="text/javascript" src="js/jQuery1.11.1.js"></script>
        <script type="text/javascript">
            $(function(){
                $("li").bind({
                    "mouseover":function(){
                        $(this).css("background","blue")
                    },
                    "mouseout":function(){
                        $(this).css("background","")
                    }
                    "click":function(){
                        alert($(this).text());
                    }
                }).unbind("mouseover mouseout");
                
                });
        </script>
    </head>
    <body>
        <ul>
            <li>呵呵</li>
            <li>嘻嘻</li>
            <li>哈哈</li>
        </ul>
    </body>
</html>

JQ的live(),on(),deletage(),bind()几个的区别

 

  

bind()方法是绑定事件最直接的方法,这个方法是绑定到document上存在最久的方法,也很好的解决了兼容性方面的问题;

bind()方法的优点:1.很好的解决了各个浏览器的兼容性问题;

         2.非常方便简单的能进行事件的绑定;

          3.对于利用ID选出来的元素是非常好的,不仅仅是很快的可以hook上去(因为一个页面只有一个id),而且当事件发生时,handler可以立即被执行实现方式;

bind()方法的缺点:1.bind()不会绑定在通过bind()添加的元素上面;

          2.他会绑定到所有选出来的元素上面;

          3.只有当页面加载完成后才会执行bind()事件,可能会产生效率问题;

live()这个绑定方法是通过冒泡机制来进行绑定的,由于在JQ1.7以上已经不推荐使用,在此不进行说明了;

deletage()这个方法在此之前从来没有用过,看过万丈后才知道还有这么一个绑定事件的方法;

  deletage()这个方法的有点像live()方法,但不同于live()方法的地方在于他不会将event绑定到所有的ducoment上面,而是由你决定将他绑定在什么上面;

    deletage()的优点:1.支持绑定到动态添加的元素上面

              2.你可以选择把那个那个事件放到你指定的元素上面;

    deletage()的缺点:1.尽管减少了decoment已经很少了,但是还是需要来查找那个元素上面绑定了那个事件。需要花一定的时间。

on():其实bind(),live(),delegate()都可以用on()方法来代替;就像undind();die()和undeletage()一样可以用off()来实现一样;

  on()的优点:1.提供了一种统一的绑定事件的机制。

  on()的缺点:1.隐藏了一些前面方法的细节。

总结:用bind()的代价是非常大的,他会把所有的时间绑定到DOM上面;

  live()zai JQ1.7上面已经不被推荐使用了;

  deletage()可以在动态元素上添加绑定事件;

  on()结合了前面3种方法,为绑定事件有个统一。但是ON()不支持绑定动态添加的元素

原文地址:https://www.cnblogs.com/qjt970518--/p/6432428.html