webservice response handling

by John Allan

HTML

<div>
<p>test one</p>
<button class='button'>test one</button>
</div>

<div>
<p>test two</p>
<button class='button'>test two</button>
</div>

CSS

.on{
    color: gold;
}

JavaScript

var eventHandler = (function() {

    var elements,
        webService = function (callbackEventEl, callbackEventName) {
            $(callbackEventEl).trigger(callbackEventName);
        },
        handleClickResponse = function (e) {
            $(this).siblings('p').toggleClass('on'); 
        },
        handleClick = function (e) {
            webService(e.currentTarget, 'clickResponse');
        },
        init = function() {
            
            elements = {
                'body':                  $('body')   
            };
                
            elements.body.on({
                'click':                 handleClick,
                'clickResponse':         handleClickResponse
            }, '.button');

        };

    return {
        init: init
    }

}());

$(document).ready(function() {
    eventHandler.init();
});