Kcko
2/26/2020 - 9:11 AM

jQuery $.Callbacks()

<html>
<body>
 
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
 
<script>
 
var cal = function(a,b) {
	console.log(a+b);
};
 
var callbacks = $.Callbacks();
 
callbacks.add( cal );
 
callbacks.fireWith( window, [3,2]);
 
</script>
</body>
</html>
<!-- see: http://jsfiddle.net/UX5Ln/ -->

<html>
<body>
 
 <style>
     .click{
      color: red;
  }
  
  #last span{
      font-weight: bold;
  }
   
 </style>
 
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
 
 
 
 <div id="click" class="click">Click Me</div>
<div>Clicks: <span id="clickCount">0</span></div>

<br/>

<div id="click2" class="click">Click Me Too</div>
<div>Clicks: <span id="clickCount2">0</span></div>

<br/>

<div id="last">Last element clicked: <span></span></div>
 
 
<script>
 
var clickCallbacks = $.Callbacks();

clickCallbacks.add(function() {
    var c = parseInt(this.text(), 10);
    this.text(c + 1);
    
    console.log(arguments);
});
clickCallbacks.add(function(id) {
    $('span', '#last').text(id);
});

$('.click').click(function() {
    var $ele = $(this).next('div').find('[id^="clickCount"]');
    clickCallbacks.fireWith($ele, [this.id]);
});
 
</script>
</body>
</html>