if ( !!window.SLB && SLB.has_child('View.extend_content_handler') ) {(function($) { SLB.View.extend_content_handler('image', { /** * Render images * @param obj item Content Item * @param obj dfr Promise for rendering process * @return obj Promise for rendering process (Resolved when content is loaded) */ render: function(item, dfr) { // Create image object var img = new Image(); // Set load event var handler = function() { // Save Data item.set_data(img); // Set attributes item.set_attribute('dimensions', {'width': img.width, 'height': img.height}); // Build output var out = $('', {'src': item.get_uri()}); // Resolve deferred dfr.resolve(out); }; // Attach event handler $(img).on('load', function(e) { handler(e); }); // Load image img.src = item.get_uri(); // Return promise return dfr.promise(); } }); })(jQuery); }