2012-02-10 17 views
0

私は特定のイメージをクリックするとイメージがアラートに表示される場合、hrefからのイメージの幅が必要なプロジェクトに取り組んでいます。イメージの幅をimgタグの代わりにhrefタグから取得する

次は、私はそれがimgタグからではないのhrefから画像の幅をとり、画像の幅を取得しようとするたびに、私は

<li> 
     <a href="<?php echo $pic;?>?id=<?php echo $id;?>&pic=<?php echo $picID;?>" data-title="" data-desc=" " data-rel="group2" data-bw="<?php echo $pic;?>" class="lightbox" id="plzx" > 
     <img src="<?php echo $pic;?>" width="160" height="160" title="Click To View"/></a>      
    </li> 

を使用していますHREFと画像コードです。 imgタグの幅は既に "160"と定義されています。私はNITが

$('a').click(function() { 
     var image = $("<img />").attr("src", $(".lightbox").attr("href")); 
     $(document).append(image); 
     alert(image.height()); 
     alert(image.width()); 
     image.remove(); 
    }); 

を働いている次のコードを使用してい<a href

から画像の幅を取得するための可能な方法は、htmlコードがある

に基づいて
 <li> 
        <a href="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg?id=3&pic=101" data-title="" data-desc=" " data-rel="group2" data-bw="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg" class="lightbox" id="plzx" > 

        <img src="uploads/kareena-kapoor-144a_$1$Ni5.St4.$kPORmHFjcfGBJjn2KHSis0.jpg" width="160" height="160" title="Click To View"/></a> 

    </li>   
+0

ここで、あなたは 'href'で幅と高さを設定していますか? – diEcho

+2

「hrefから幅を取得する」と言ったら、どういう意味ですか?画像のhrefに画像が表示される幅が含まれていることを意味しますか?たとえば、 ''のように、文字列から '200'を取得したい場合や、イメージを読み込んでその幅を決定したい場合動的に配信された画像ですか? – DaveRandom

答えて

3

次のようなもの:

<a href="/path/to/big.jpg"><img src="/path/to/small.jpg"></a> 

これはそれを行う必要があります。

$('a').click(function() { 
    $(new Image()).load(function() { 
     alert(this.width); // image width 
     alert(this.height); // image height 
    }).attr('src', this.href); 
}); 

更新:あなたは、幅/高さを使用してプログラムを継続する必要がある場合は、試してみてください。

var width,height; 
$('a').click(function() { 
    $(new Image()).load(function() { 
     width = this.width; 
     height = this.height, 
     onLoaded(); 
    }).attr('src', this.href); 
}); 
function onLoaded() { 
    alert(width); 
    alert(height); 
    // continue... 
} 

あなたは一時画像を追加する必要はありません。文書を作成しますが、幅と高さを抽出する前にロード・リスナーを追加する必要があります。

AdBlockの拡張機能はWebkitの抽出結果に影響を与える可能性があるので、デバッグするときは無効にしてください。

+2

'.attr( 'src'、this.href);'私は – devnull69

+0

@ devnull69もちろん、thanxだと思います! – David

+0

@Davidとdevnull69に感謝します。 varに幅を格納する方法を教えてください。 –

関連する問題