Retina対応のために自動でimg要素に画像の半分の長さを入れる処理を書こうと思い img要素の高さをjQueryで取得しようとしたのですが

 $('#hoge img').width();
  $('#hoge img').height();

上の記述を使うと、画像のオリジナルではなくimg要素自体の高さを取得します。 なのでimgのサイズが変化しているとオリジナルの画像サイズが取れません。

なので下記のように対応

var element = $('#hoge img');
element.on('load',function(){
    var img = new Image();
    img.src = element.attr('src');
    var width = img.width;
    var height = img.height;
    if(width != 0 || height != 0){
        element .width(Math.floor(width/2)).height(Math.floor(height/2));
    }
});

イメージがロードされたらImageオブジェクトにimgタグのsrcをつっこんで高さと、幅を取り出す。 あとは半分の数値を計算して返してあげるといった感です。

画像の情報を使用するときはImageオブジェクトをうまく使うといい感じです。