jQuery 多元素事件的一键事件

标签 jquery

我的问题与此相关: jQuery same click event for multiple elements

但是,当我这样做时:

$('.class1, .class2').click(function() {
   some_function();
});

我总是对同一个对象使用相同的函数。例如,如果我想合并以下两个语句该怎么办:

$(".class1").click(function () {
  $(".classer1").slideToggle("slow");
});

$(".class2").click(function () {
  $(".classer2").slideToggle("slow");
});

它们为每个对象引用不同的对象 - 我什至可以合并它吗?

谢谢, 奥利弗

最佳答案

你可以这样做:

$(".class1, .class2").click(function () {
  $(".classer"+$(this).attr('class').substr(-1)).slideToggle("slow");
});

只要您单击的元素只有一个类。这将从被单击的元素中取出整数并将其附加到 .classer 中。因此,点击 .class2 将触发 .classer2 上的切换。

关于jQuery 多元素事件的一键事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15534810/

相关文章:

javascript - jquery 选择器负数或 null

jquery - 如何在jQuery Expander插件中使用jQuery的 "slideDown"和 "slideUp"效果?

jquery - 如何使用 Jquery 卡住 HTML 表格的标题和列

javascript - 在这种情况下如何正确利用 $.Deferred()/Promise() ?

javascript - 通过单击功能更改可动态字段的属性值

通过 ScriptManager.RegisterStartupScript 调用时 JavaScript 回调函数无法找到控件

javascript - 使用 Jquery 滑动菜单时媒体查询不起作用

c# - 使用 JSON 结果返回多个对象

jquery - ":eq()"和 .eq() 之间的区别

jquery - 如何使用 .data() 更改 jQuery 中的元素样式