第七节 .ready()、事件绑定

1、文档描述:https://www.jquery123.com/ready/

image.png

根据上面的描述,就是当DOM就绪时会执行,那么这个方法与document.onload有什么区别呢?

document.onload=function()
            {
                
            }

onload事件呢,是整个页面完全呈现时才会触发,比如说这个页面上有大量的图片,如果图片还没有接受完整,这个事件也是不会触发的,但是在大多数情况下,只要DOM结构完全加载时,脚本就应该可以运行,所以这个时候就要用.ready()方法了,传递处理函数给.ready()方法,能保证DOM准备好后就执行这个函数,因此,这里是进行所有其它事件绑定及运行其它 jQuery 代码的最佳地方。当使用的脚本依赖 CSS 属性值时,需要特别注意,要保证外部的样式或内嵌的样式被加载完后,再调用脚本。
以下三个语法是全部等价的:

  • $(document).ready(handler)
  • $().ready(handler)//不推荐使用
  • $(handler)

2、事件绑定

<!DOCTYPE html>
<html>

    <head>
        <meta charset="utf-8" />
        <title>网页的标题</title>
        
        <script type="text/javascript" src="js/jquery-1.12.4.min.js">
            
        </script>
        
        <script type="text/javascript">
            
            $(function(){
                //这就相当于写在了ready()里面
                $("#btest").click(function(){
                    alert("jquery测试绑定事件")
                })
            })
            
            
        </script>
        
        
        
    </head>

    <body>
        <input type="button" value="测试事件绑定" id="btest" />
    </body>

</html>

网页显示:


image.png

3、常见事件

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>常见事件</title>
        <style type="text/css">
            #e02{
                border: 1px solid #000000;
                height: 200px;
                width: 200px;
            }
            
        </style>
        <script src="js/jquery-1.12.4.min.js"></script>
        
        <script type="text/javascript">
            var span=document.getElementById("e01");
            span.innerHTML="sssss"
            $(document).ready(function(){
                $("#e01").blur(function(){
                    $("#textMsg").html("文本框失去焦点:blur");
                }).focus(function(){
                    $("#textMsg").html("文本框获得焦点:focus");
                }).keydown(function(){
                    $("#textMsg").append("键盘按下:keydown");
                }).keypress(function(event){
                    $("#textMsg").append("键盘按:keypress");
                }).keyup(function(){
                    $("#textMsg").append("键盘弹起:keyup");
                });
                
                var i = 0;
                $("#e02").mouseover(function(){
                    $("#divMsg").html("鼠标移上:mouseover");
                }).mousemove(function(){
                    //$("#divMsg").html("鼠标移动:mousemove , " + i++ );
                }).mouseout(function(){
                    $("#divMsg").html("鼠标移出:mouseout");
                }).mousedown(function(){
                    $("#divMsg").html("鼠标按下:mousedown");
                }).mouseup(function(){
                    $("#divMsg").html("鼠标弹起:mouseup");
                });
                
                $("#e03").click(function(){
                    $("#buttonMsg").html("单击:click");
                }).dblclick(function(){
                    $("#buttonMsg").html("双击:dblclick");
                });
                
            });
            
            
            
            
            
        </script>
        
    </head>
    <body>
        <input id="e01" type="text" /><span id="textMsg"></span> <br/>
        <hr/>
        <div id="e02" ></div><span id="divMsg"></span> <br/>
        <hr/>
        <input id="e03" type="button" value="可以点击"/><span id="buttonMsg"></span> <br/>
    </body>
</html>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • JavaScript和HTML之间的交互是通过用户和浏览器操作页面时引发的事件来处理的。 jQuery增加并扩...
    DHFE阅读 637评论 0 1
  • 事件流 JavaScript与HTML之间的交互是通过事件实现的。事件,就是文档或浏览器窗口中发生的一些特定的交互...
    DHFE阅读 847评论 0 3
  • 前言 在之前的文章 如何优化网站性能,提高页面加载速度 中,我们简单介绍了网站性能优化的重要性以及几种网站性能优化...
    倚剑闯天涯_阅读 522评论 0 3
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,609评论 0 7
  • 我和你同个村,两家相隔不到三百米的距离,却从我小学转学后再也没有见过面 还记得小时候的你,高瘦还留着那一头像男孩子...
    在下张十五阅读 785评论 0 1