2016-04-10 14 views
1

iframe内の要素のCSSスタイルをチェックしようとしていますが、要素を見つけることができません。質問のiframeでCSSをチェックしてください

iframe内にないとうまくいきます。そうすれば、iframeにコンテンツが見つかっているはずです。ここで

はjQueryを使ってiframe内jsFiddle

var iframe = document.createElement('iframe'); 
var html = '<body><div id="cadrage" style="color:black">Test</div></body>'; 
iframe.src = 'data:text/html;charset=utf-8,' + encodeURI(html); 
document.body.appendChild(iframe); 


$('iframe').ready(function() { 
     if($('iframe').contents().find("#cadrage").css('color') == "rgb(0, 0, 0)") { 
     alert('It equal'); 
     } else { 
     alert('It did not equal'); 
     } 
}); 

答えて

1

で、あなたの代わりにready()load()を使用する必要があります。

$('iframe').load(function() {

の作業フィドル:http://jsfiddle.net/jpaulet/r1y2vrh4/9/

そして、それが正常に動作します!役に立ったと思っています

+0

私がテストしているときにはうまく動作しません。 –

+0

はい、それは警告します:あなたがフィドルを実行すると "それと等しい" .. –

+0

私は平等になっていません.jQuery 1.8以降では 'ready()'ではありませんか? –

関連する問題