• jQuery(十一):jQuery的事件


    一、jQuery事件的分类

    jQuery事件是对JavaScript事件的封装,常用事件分类如下:

    1、基础事件

    1. window事件。
    2. 鼠标事件。
    3. 键盘事件。
    4. 表单事件。

    2、复合事件是多个事件的组合

    1. 鼠标光标悬停。
    2. 鼠标连续点击。

    二、鼠标事件

    鼠标事件是当用户在文档上面移动或单击鼠标时而产生的事件,常用鼠标事件有:

    三、键盘事件

    用户每次按下或者释放键盘上的按键时都会产生事件,常用键盘事件如下:

    四、表单事件

    当元素获得焦点时,会触发focus()事件,失去焦点时,会触发blur()事件。

    表单提交时会触发submit()事件。

    五、综合示例

    需求说明:

    1、用户名输入框获得焦点时输入框背景色为浅蓝色,失去焦点时还原为白色背景色。

    2、鼠标移至登录按钮时字体变粗,移出时整体恢复正常。

    3、敲击键盘的“回车”键时触发表单提交事件。

    代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>事件演示示例</title>
        <style type="text/css">
            #login{
                width: 400px;
                height: 250px;
                background-color: #f2f2f2;
                border:1px solid #DDDDDD;
                padding: 5px;
            }
            #login fieldset {
                border: none;
                margin-top: 10px;
            }
            #login fieldset legend{
                font-weight: bold;
            }
            #login fieldset p{
                display: block;
                height: 30px;
            }
            #login fieldset p label {
                display: block;
                float:left;
                text-align: right;
                font-size: 12px;
                width: 90px;
                height: 30px;
                line-height: 30px;
            }
            #login fieldset p input {
                display: block;
                float:left;
                border: 1px solid #999;
                width: 250px;
                height: 30px;
                line-height: 30px;
            }
            #login fieldset p input.code{
                width: 60px;
            }
            #login fieldset p img{
                margin-left: 10px;
            }
            #login fieldset p a{
                color: #057BD2;
                font-size: 12px;
                text-decoration: none;
                margin: 10px;
            }
            #login fieldset p input.btn{
                background: url("./images/login.gif") no-repeat;
                width: 98px;
                height: 32px;
                margin-left: 60px;
                color: #ffffff;
                cursor: pointer;
            }
            #login fieldset p input.input_focus{
                background-color: #BEE7FC;
            }
            </style>
           <!--引入jQuery-->
           <script src="../jquery-3.3.1.js"></script>
           <!--javascript-->
           <script>
             $(function(){
                 // 用户名输入框的焦点事件
                 $("input[name='member']").focus(function(){
                     $(this).addClass("input_focus");
                 });
                 // 用户名失去焦点
                 $("input[name='member']").blur(function(){
                     $(this).removeClass("input_focus");
                 });
    
                 // 鼠标移入移出事件
                 $(".btn").mouseover(function(){
                     $(this).css("font-weight","bold");
                 });
                 $(".btn").mouseout(function(){
                     $(this).css("font-weight","normal");
                 });
    
                 // 键盘事件,敲击回车键进行表单提交,keyCode的数值代表不同的键盘按键
                 // js需要区分keyCode(IE)和which(FF)的兼容性,event.keyCode||event.which用来考虑兼容性
                 $(document).keypress(function(e){
                     if(e.keyCode==13){
                         //$("#login").submit();
                         // 模拟表单提交
                         alert("触发表单的提交事件");
                     }
                 });
             });
           </script>
    </head>
    <body>
        <form id="login">
            <fieldset>
              <legend>用户登录</legend>
              <p>
                  <label>用户名:</label>
                  <input name="member" type="text" />
              </p>
              <p>
                  <label>密码:</label>
                  <input name="password" type="text" />
              </p>
              <p>
                  <label>验证码:</label>
                  <input name="code" type="text" class="code" />
                  <img src="images/code.gif" width="80" height="30" /><a href="#">换一张</a>
              </p>
              <p>
                  <input name="" type="button" class="btn" value="登录" />
                  <a href="#">注册</a><span>|</span><a href="#">忘记密码?</a>
              </p>
            </fieldset>
          </form>
    </body>
    </html>

    效果:

  • 相关阅读:
    cocos2d-x 3.0游戏实例学习笔记 《跑酷》第七步--物理碰撞检測(1)
    Android给定坐标计算距离
    LeetCode——Gray Code
    hdu 1203
    2015 年度新增开源软件排名TOP100
    compact处理流程分析
    ExtJs--06--Ext.WindowGroup相关方法简单使用
    android4.4的两个bug
    高阶MapReduce_1_链接多个MapReduce作业
    如何设置eclipse格式化xml代码时不自动换行
  • 原文地址:https://www.cnblogs.com/dotnet261010/p/9736281.html
Copyright © 2020-2023  润新知