iframeにコンテンツがありますが、クリックするとコンテンツの高さがアニメーションで変わります。新しいアニメーションの高さに一致するようにiframeの高さを変更する必要がありますが、これはどのように行われますか?
http://www.klossal.com/b_iframe.html
動作していないセットアップを確認できます。名前の1つをクリックすると、アニメーションが表示されます。
iframeにコンテンツがありますが、クリックするとコンテンツの高さがアニメーションで変わります。新しいアニメーションの高さに一致するようにiframeの高さを変更する必要がありますが、これはどのように行われますか?
http://www.klossal.com/b_iframe.html
動作していないセットアップを確認できます。名前の1つをクリックすると、アニメーションが表示されます。
親ノードで関数を定義し、次のように呼び出すだけで、JS を使用して親ドキュメントの関数を作成できます。
parent.setIFrameHeight(newValue);
setIFrameHeight
関数は次のようになります。
function setIFrameHeight(value) {
document.getElementById("iframe").height = value + "px";
}
jQueryライブラリを使用してそれを行うことができ、イベントを簡単にアニメーション化することもできます。
簡単な jQuery の例:
HTML:
<iframe id="iframe-box" src="httml://jsfiddle.com" height="100px" width="50px"></iframe>
<div id="clickme" >
click me
</div>
Javascript
$(function(){
$('#clickme').click(function(){
$('#iframe-box').animate({'width':'200'})
})
});
アップデート
iframe 内のコンテンツにアクセスしたい場合は、jQuery とcontent()
関数を使用してアクセスすることもできます。
jQueryObject = $("#iframe-box").contents().find("#somecontent")