(function(){
  var Img = React.createFactory(ReactImg.default);
  
  var App = React.createClass({
    render(){
      var imgs = this._getImageList().map(function(url){
        return React.createElement('div', {
          style: { width: '20%', float: 'left', 'margin-left': '10px' },
        }, Img({ src: url, key: url}));
      });

      return React.createElement('div', {
        style: {height: '480px'}
      }, imgs);
    },

    _getImageList(){
      return [
        'http://astrocoders.com/react-image-smooth-loading/images/patriota.jpg',
        'http://lorempixel.com/480/480/animals',
        'http://lorempixel.com/480/480/people',
        'http://lorempixel.com/480/480/food',
      ];
    }
  });

  window.addEventListener('load', function(){
    ReactDOM.render(
      React.createElement(App, null), document.getElementById('app'));
  });
})(React, ReactDOM);

@@ -102,24 +102,83 @@
   render()%7B%0A
+      var onClick = function()%7B console.log('Clicked'); %7D;%0A
       var im
@@ -219,16 +219,23 @@
 tion(url
+, index
 )%7B%0A     
@@ -325,21 +325,18 @@
 t', 
-'
 margin
--l
+L
 eft
-'
 : '1
@@ -374,16 +374,46 @@
 rl, 
-key: url
+onClick: onClick, key: 'photo' + index
 %7D));

Update example