jQuery之方法绑定(事件注册)代码小结

Posted 轴轴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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"));
});

4.delegate方法

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

 


 

以上是关于jQuery之方法绑定(事件注册)代码小结的主要内容,如果未能解决你的问题,请参考以下文章

JS小结之事件循环

jQuery对 动态添加 的元素 绑定事件(on()的用法)

为啥我应用jquery框架,对按钮绑定了一个监听事件后,按钮不能执行这个事件

jQuery中的事件

jQuery ---[jQuery事件之 ready事件,绑定事件,合成事件,其他常用事件]

JQuery入门——用one()方法绑定事件处理函数(仅触发一次)