2012-06-28 179 views
1

我有一個<canvas>元素,我使用jQuery將其放入div中。我在畫布上畫的線出現然後很快消失。html5 canvas元素消失

當我在$('#solutionDiv') div中放置文本時,它會在頁面加載時出現,然後被我的畫布覆蓋(短暫),然後在畫布消失時再次出現。這發生在FireFox和Chrome中。我正在使用稱爲tigra_slider_control的滑塊庫。我不認爲這是問題,但可能是。

var solnCanvas=document.createElement('canvas'); // should be accessible through $('#solutionDiv > canvas') 
solnCanvas.width = 480; 
solnCanvas.height = 480; 
var solnContext=solnCanvas.getContext('2d'); 
solnContext.strokeStyle = '#00f'; // blue lines 
solnContext.lineWidth = 4; 
solnContext.moveTo(50,16); 
solnContext.lineTo(50,5); 
solnContext.lineTo(5,5); 
solnContext.stroke(); 
$('#solutionDiv').append(solnCanvas); 

相應的div是:

<div id="solutionDiv" style="width:580px;height:500px;" class="boxy">    
     Now you see it ... <br /> 
     Now you don't 
    </div> 

我不需要(或希望)在這個div文本。這只是試驗...任何幫助將不勝感激。

+0

可以分享jsfiddle的問題 –

+0

[你期望會發生什麼?](http://jsfiddle.net/DSH9q/) – Ohgodwhy

回答

2

所以,這是我期待已久的回答我自己的問題。這似乎與我動態添加div和canvas有關。當我一開始就在HTML中添加div和canvas時,畫布仍然保持原樣。這不完全是一個解決方案 - 更多的解決方法。稍後再添加畫布,我只是把它變成可見的。

0

如果您不需要(或想要)div,take the text out of the div中的文字。

+0

感謝您的提示。我的問題是'canvas'元素在該div中有或沒有文本時消失。我剛分叉你創建的JSFiddle。我將逐步添加我的代碼的其餘部分,並查看它破壞的位置.... – ptmalcolm