var app = {
log: jQuery('#log'),
config: {
clickMessage: 'Hi! clicked!',
mouseOverMessage: 'Mouseover!'
},
clickHandler: function() {
this.log.html(this.config.clickMessage);
},
nested: {
mouseOverHandler: function() {
this.log.html(this.config.mouseOverMessage);
}
}
};
jQuery('#foo').bind({
'click': jQuery.proxy(app, 'clickHandler'),
'mouseover': jQuery.proxy(app.nested.mouseOverHandler, app)
});
<h1 id="log">Waiting</h1>
<p id="foo">
I am foo. <br/>Click me.
</p>