fancybox v2 を使用して、コンテンツが動的に生成される div を表示しようとしています。私はdivのサイズを物事のスキームのかなり後半に設定しました。サイズが固定されているdivを表示するためのfancyboxのドキュメントの例を試しました。次のようになります。
<a id="fancy" href="#showdiv">Show contents of div.</a>
<div id="showdiv">...</div>
<script>
$(document).ready(function() {
$("#fancy").fancybox({autoSize:false, width: W, height: H, ...});
});
</script>
私が欲しいのはW=$("#showdiv").width
とH=$("#showdiv").height
です。明らかに、ドキュメントの準備が整った時点で H と W は利用できません。どうすればこれを行うことができますか?
編集: コンテンツ div の html は次のとおりです。
<div id="hidediv" style="display:none">
<div id="showdiv" style="display:block;position:relative">
<canvas id="mycanvas" style="position:relative;display:block"></canvas>
</div>
</div>
アンカー「#fancy」のクリック ハンドラーでは、次のようにします。
function onclick() {
var jcanvas = $("#mycanvas").css('width', some_width).css('height', some_height);
// draw on canvas
}
「#fancy」は Fancybox に関連付けられたものです。