zoukankan      html  css  js  c++  java
  • jQuery之方法绑定(事件注册)代码小结

    1.最直接的模式,直接将一个function对象传入方法函数,如下面的click(),好处坏处一看便知

    $("#btnComfirmChooseCompany").click(function () {
        var companyName = "";
        var companyID = "";
        var hasChecked = false;
        var allCheckbox = $("input[name='companyID']");
        for (var i = 0; i < allCheckbox.length; i++) {
            if (allCheckbox[i].checked == true) {
                hasChecked = true;
                companyID = $(allCheckbox[i]).attr("value");
                companyName = $("#"+companyID).parent().next().text();
            }
        }
        //
    });

    2.等价写法之,将function独立定义给一个变量

    function ComfirmChooseCompany(e) {  //e是可选参数
        //同上,略
    }
    //
    var ComfirmChooseCompany = function(){
    }

    然后将变量传入JS事件函数,效果感觉一样,但至于有什么差异有待理解

    $("#btnComfirmChooseCompany").click(
        ComfirmChooseCompany; //可以运行,思考...Company后加了小括号,是什么效果? 答:ComfirmChooseCompany直接运行了
    );
    
    $("#btnComfirmChooseCompany").click(function(){
            ComfirmChooseCompany(); //等价写法,思考这行当小括号是否可以省略
        }
    );

    3.bind方法

    $("#allCheck").bind("click", function () {
        $("[name = $chkItem]:checkbox").attr("checked", $(this).attr("checked"));
    });
    $("a.scroll_position").bind("click",function () {
            applyPosition();//注意要有小括号
    });
    $("a.scroll_position").bind("click",function () {
            applyPosition(this);//为了获取a节点里面埋的值,this是Dom对象
    });

    4.delegate方法

    $("body").delegate("#tb_2 tr", "click", function () {
        $(this).addClass('tr_color').siblings("tr").removeClass("tr_color");
    });


     

  • 相关阅读:
    Mysql常见索引介绍
    Mysql字段修饰符(约束)
    使用select和show命令查看mysql数据库系统信息
    Mysql5.7数据库介绍
    对Mysql数据表本身进行操作
    各种修改Mysql字符集
    Mysql的安全配置向导命令mysql_secure_installation
    firewalld介绍
    CentOS7使用yum安装mysql5.7
    利用ASP.NET一般处理程序动态生成Web图像(转)
  • 原文地址:https://www.cnblogs.com/zhuji/p/8416482.html
Copyright © 2011-2022 走看看