// Loop all .fetchSize links $('a.fetchSize').each(function(){ // Issue an AJAX HEAD request for each one var link = this; $.ajax({ type: 'HEAD', url: link.href, complete: function(xhr){ var size = humanize(xhr.getResponseHeader('Content-Length')); // Append the filesize to each $(link).append(' (' + type + ')'); } }); }); function humanize(size){ var units = ['bytes','KB','MB','GB','TB','PB']; var ord = Math.floor( Math.log(size) / Math.log(1024) ); ord = Math.min( Math.max(0,ord), units.length-1); var s = Math.round((size / Math.pow(1024,ord))*100)/100; return s + ' ' + units[ord]; } // html // First Trickshot // This Trickshot // Ball.png