如果使用jQuery添加或更改CSS类,我如何触发事件? 更改CSS类是否会触发jQuery change()事件?

推荐答案

无论何时更改脚本中的类,都可以使用trigger来引发自己的事件.

$(this).addClass('someClass');
$(mySelector).trigger('cssClassChanged')
....
$(otherSelector).bind('cssClassChanged', data, function(){ do stuff });

但除此之外,当一个类发生变化时,没有任何方式可以触发事件.change()仅在焦点离开输入已被更改的输入后激发.

$(function() {
  var button = $('.clickme')
      , box = $('.box')
  ;
  
  button.on('click', function() { 
    box.removeClass('box');
    $(document).trigger('buttonClick');
  });
            
  $(document).on('buttonClick', function() {
    box.text('Clicked!');
  });
});
.box { background-color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="box">Hi</div>
<button class="clickme">Click me</button>

More info on jQuery Triggers

Jquery相关问答推荐

TinyMCE不保存区块报价

逐个交换图像

如何用 jQuery / AJAX 替换表格的行

为什么对同一个 ASP.NET MVC 操作的多个同时 AJAX 调用会导致浏览器阻塞?

jQuery $(document).ready () 触发两次

在页面上放置文件时如何设置文件输入值?

如何制作 AngularJS 指令来停止传播?

数据表警告(表 id = 'example'):无法重新初始化数据表

Jquery .on('scroll')在滚动时不触发事件

JQuery 仅在 Rails 4 应用程序中的页面刷新时加载

如何使用 jQuery 清空输入值?

使用 JavaScript 和 jQuery,跨浏览器处理按键事件 (F1-F12)

jquery获取帖子操作网址

jQuery:value.attr 不是函数

您如何处理 jQuery 中的表单更改?

什么时候应该使用 jQuery deferred 的then方法,什么时候应该使用pipe方法?

无法更新数据属性值

带有 LIKE 的 Spring JPA @Query

如何使用 jQuery 的 form.serialize 但排除空字段

jQuery UI 选项卡 - 如何获取当前选定的选项卡索引