jQuery:检测到不是原始类的已更改类名的单击

尼古拉

我有这个按钮,将其类从最大化更改为最小化。最初,它具有一个最大化类,但是在单击时会变为最小化。现在我想抓住最小化和仅最小化的点击。

看下面我的代码:

$('.button-maximize').off('click').on('click', function() {
    $(this).removeClass('button-maximize').addClass('button-minimize');
});

因此,这将使类最小化。显然,我需要事件委托来捕获事件。

因此,我接下来要这样做:

$('.button-wrap').off('click').on('click', '.button-minimize:not(.button-maximize)', function() {
    alert('test');
});

要澄清的button-wrap是父母。所以我的问题是该警报('test'); 当我第一次单击最大化按钮时触发。我如何告诉jQuery仅在按钮没有“ button-maximize”类的情况下才希望它触发?

谢谢!

马克·舒尔蒂斯

只需使用任一点击方式并进行检查即可。

$('.button-wrap').on('click', '.button-minimize, .button-maximize', function() {
  if ($(this).hasClass('button-maximize')) {
    $(this).removeClass('button-maximize').addClass('button-minimize');
  } else {
    alert('test');
  }
});

编辑对评论的响应:这基本上是相同的事情,但关键是事件已附加到包装器。

$('.button-wrap').on('click', '.button-maximize', function() {
    $(this).removeClass('button-maximize').addClass('button-minimize');
}).on('click', '.button-minimize', function() {
    alert('test');
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery:检测到不是原始类的已更改类名的单击

来自分类Dev

jQuery:单击更改类

来自分类Dev

检测单击了哪个类的jQuery

来自分类Dev

jQuery类不会从$ .get页面检测到

来自分类Dev

确定类是否已更改(不是对象)

来自分类Dev

在CSS类中检测jQuery中的单击

来自分类Dev

更改jQuery中的类名

来自分类Dev

未检测到主类

来自分类Dev

单击更改类名的AngularJS方法

来自分类Dev

是否可以检测到哪些已弃用的类被积极使用?

来自分类Dev

使用jQuery检测是否单击了一个类

来自分类Dev

使用 jQuery 或 CSS 更改类名

来自分类Dev

jQuery未检测到对子元素的单击

来自分类Dev

jQuery,如何检查是否已加载类。然后将功能更改为在第一次单击后隐藏

来自分类Dev

如何使用jQuery检测按钮是否已单击或输入的值已更改?

来自分类Dev

jacoco离线检测原始类路径

来自分类Dev

jQuery-如果在页面上检测到x个类,则执行y

来自分类Dev

更改类名JS

来自分类Dev

如何更改类名?

来自分类Dev

使用JavaScript或jquery按类名自动单击链接?

来自分类Dev

jQuery Accordion单击更改字体真棒图标类

来自分类Dev

实体框架SaveChanges已检测到对关系角色的冲突更改

来自分类Dev

单击类名 selenium 的元素

来自分类Dev

单击更改CSS类的属性

来自分类Dev

jQuery在删除类后检测类

来自分类Dev

jQuery单击时从父类删除类

来自分类Dev

jQuery UI更改类

来自分类Dev

jQuery滚动更改类

来自分类Dev

jQuery触发类更改