2016-03-27 13 views
-2

JSを使用して変数にスタイルattrを格納する方法はありますか?変数にattrスタイルを格納

私はこのexample

<div style="width: 100px; height: 100px; background: cyan"></div> 

var style = 'style="' + $("div").attr('style') + '"'; 
    alert(style); 
+1

何これは正しく '幅例えば形式の文字列を取得しますので、あなたは、達成しようとしていることである:100pxには、高さ:100ピクセル。背景:シアン ' – user2950720

答えて

-1
var style = 'style="' + document.getElementsByTagName('div')[0].getAttribute('style') + '"'; 

を試してみましたが、あなたの例の純粋なJavaScriptバージョンです。

+0

私のウェブサイトにJSを置くとstyle =" undefined "と表示されます –

+0

live example works! https://jsfiddle.net/e1kymq8x/ –

0

ここにコードが表示されているとおりにウェブサイトでこれを試していますか?その場合は、ページに複数の「div」があるため、おそらく未定義に戻っています。問題のdivにIDを与え、JSを$( 'div')から$( '#whateveridyouchose')に変更してください。

問題として画像の可用性を除外するためにこのコードを試してみてください。

$(document).ready (function() { 
    var style = 'style="' + $("selectorofimage").attr('style') + '"'; alert(style); 
}); 
+0

実際にはイメージですが、要素へのパスは良いです。問題は、スクリプトが実行されたときにイメージがロードされないことがあります。 –

+0

これは確かに定義されていませんが、その可能性を排除するためにJSをdocument.ready関数でラップすることができます。確認するために、上記のJSは、問題のDOM要素に明示的に割り当てられたスタイルを返します。あなたのユースケースがイメージの場合、スタイルattrsではなくイメージ自体の寸法を取得しようとしているのだろうか?あなたが正しい木を吠えていることを確認したいだけです。 –

+0

イメージのスタイルには、位置および寸法プロパティのみが含まれます。私はそのスクリプトを[onAvailable()](https://jsfiddle.net/y20v4p9c/)関数でラップしていますが、それでも未定義を返します。 –

関連する問題