为多个元素组合 jQuery 个事件侦听器
Combining jQuery event listeners for multiple elements
如何将以下内容组合成两个事件侦听器?
$(document).on "focus", "input", (e) ->
$element.addClass "class-name"
$(document).on "blur", "input", (e) ->
$element.removeClass "class-name"
$(document).on "focus", "textarea", (e) ->
$element.addClass "class-name"
$(document).on "blur", "textarea", (e) ->
$element.removeClass "class-name"
试试下面的代码:
$("textarea").on("blur focus", function(event){
if ($(this).hasClass('active')) {
$(this).removeClass("active");
}
else {
$(this).addClass('active');
}
})
$("input").on("blur focus", function(event){
if ($(this).hasClass('active')) {
$(this).removeClass("active");
}
else {
$(this).addClass('active');
}
})
在没有 IDE 的情况下完成,但这就是您组合事件的方式。 .on() 方法的第一个参数允许您列出事件(不确定它是否有数量限制,但到目前为止我还没有遇到任何问题。
如何将以下内容组合成两个事件侦听器?
$(document).on "focus", "input", (e) ->
$element.addClass "class-name"
$(document).on "blur", "input", (e) ->
$element.removeClass "class-name"
$(document).on "focus", "textarea", (e) ->
$element.addClass "class-name"
$(document).on "blur", "textarea", (e) ->
$element.removeClass "class-name"
试试下面的代码:
$("textarea").on("blur focus", function(event){
if ($(this).hasClass('active')) {
$(this).removeClass("active");
}
else {
$(this).addClass('active');
}
})
$("input").on("blur focus", function(event){
if ($(this).hasClass('active')) {
$(this).removeClass("active");
}
else {
$(this).addClass('active');
}
})
在没有 IDE 的情况下完成,但这就是您组合事件的方式。 .on() 方法的第一个参数允许您列出事件(不确定它是否有数量限制,但到目前为止我还没有遇到任何问题。