2017-08-24 2 views
1

を得ることがsvgソースファイルでimgの保存widthheightまたはviewBox値を読み取るする可能性がありますか? 私はこれを試しましたが、まだundefinedを取得します。JavaScriptを使用して幅/高さまたはビューボックスに保存<img> SVG(jQueryの)

$('img.cart').load(function(){ 
 
    console.log($('img.cart').children('svg').attr('viewBox')); 
 
});
img { 
 
    width: 50%; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<img class="cart" src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/cartman.svg">

+0

を属性を使用してみてください属性再び私が更新したスニペットを見てコード – Joyson

答えて

0

imgタグ内でSVGを使用することにより、SVGにアクセスすることはできませんほとんどのタグが$('img.cart').css('height'));

$('img.cart').load(function(){ 
 
    console.log($('img.cart').css('height')); 
 
});
img { 
 
    width: 50%; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
    <img class="cart" src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/cartman.svg" height='30px;'> 
 
<img class="cart" src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/cartman.svg" height='130px;'> 
 
<img class="cart" src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/cartman.svg">

+0

ありがとう、@ジョイソン。残念ながら '.css( 'height')'は常に 'img'の高さを返しますが、実際のグラフィックスのサイズは返しません。したがって、 'img'がコンテナによって制限されている場合、グラフィックはスケーリングされますが、' img'要素のw/h値は 'svg 'の比率にはありません。 – friedman

+0

しかし、あなたは 'img'タグの高さを設定することでsvgの高さを制限することができます@friedman – Joyson

+0

コードを更新したスニペットをもう一度見てください – Joyson

関連する問題