2016-08-13 4 views
0

クローンされた要素に現在適用されているフォントサイズを取得しようとしていますが、jQuery .css関数を使用しても何も取得されません。jQuery:クローンされた要素に.cssを使用して特定のCSSプロパティを取得しますか?

jQueryで ".css"関数を使用して、クローンされた要素から特定のCSSプロパティを取得することはできませんか?

次は動作しません:

var clonedElement = jQuery('.element').clone(); 
clonedElement.attr("style", ""); 
var defaultFontSizeValue = clonedElement.css('font-size'); 
console.log(defaultFontSizeValue); 

編集1 元が、残念ながら私は介して適用され、その要素のオーバーライドされたフォントサイズのプロパティを取得することはできませんインラインスタイルを持っていますクラス。このため、クローン内のインラインスタイルを削除して元の値を取得しようとしています。

+0

はあなたすることはできません:あなたは何ができるか

は(あなたがしたい場合は、display: hiddenを設定した後)bodyにクローン化された要素を追加して、フォントサイズをチェックしています複製前に元のプロパティを取得しますか? – Scott

+0

残念ながら、元のスタイルにはインラインスタイルが適用されているため、オーバーライドされたCSSプロパティを取得しようとしているので、これを行うことはできません。 – Dmitri

答えて

1

あなたの問題は、クローンされた要素があなたのdomに「接続」されていないことです。したがって、この要素にはスタイル定義がありません(cssはインラインではありません)。

$(function() { 
 
    console.log($('.c1').css('fontSize')); 
 
    c1 = $('.c1').clone(); 
 
    console.log(c1.css('fontSize')); 
 
    
 
    c1.css('display', 'none'); 
 
    $('body').append(c1) 
 
    console.log(c1.css('fontSize')); 
 
});
.c1 { 
 
    font-size: 12px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="c1">asd</div>

+0

ありがとう!それはトリックを行います! – Dmitri

関連する問題