Observer: Basic Pub Sub
by Gary Metzker
HTML
<script src="http://code.gmetzker.com/observerjs/Observer.js"></script>
<input type='button' value='Publish some.event' id='pubButton'>
<div id='out'><h3>Output<h3></div>
JavaScript
$(document).ready(function () {
var ob = new Observer();
//Add first subscriber to 'some.event' channel.
ob.subscribe('some.event', function () {
output('Luke');
});
//Add second subscriber to 'some.event' channel.
ob.subscribe('some.event', function () {
output('Vader');
});
//Add subscriber to 'some.event.other' channel.
ob.subscribe('some.event.other', function () {
output('Yoda');
});
$('#pubButton').on('click', function () {
//Publish a message on the 'some.event' channel.
ob.publish('some.event');
});
function output(value) {
$('#out').append(value + '<br/>');
}
});