我想学习如何更好地编写一个更通用的方法,可以称为onload和onclick。这是我到目前为止完美的工作。
rushJustification($("#rush"));
$("input#rush").click(function() {
rushJustification($(this));
});
function rushJustification(obj) {
var rushInput = obj.is(':checked');
var rushContainer = $("#rush-justification-container");
if(rushInput) {
rushContainer.slideDown(300);
} else {
rushContainer.hide();
}
}
答案 0 :(得分:4)
不是复制click
处理程序的内容,而是触发它:
$("input#rush").click(function() {
rushJustification($(this));
}).click();
当其他脚本已绑定事件时,前面提到的方法可能会产生一些副作用。在您的情况下,您可以使用以下代码:
rushJustification( $("input#rush").click(function() {
rushJustification($(this));
}) );
起初可能看起来很奇怪。由于jQuery的可链接性,这个功能是可行的。 click
方法返回相同的jQuery集合,即$('input#rush')
。然后将其作为参数传递给rushJustification
函数。