2013-02-27 51 views
0

我有一個HTML5 canvas元素和一個點擊事件監聽器,我需要的是將它連接到一個浮動div,它出現在用戶點擊帆布。代碼建議最好的方法來做到這一點?在點擊點上浮動div上方的div的代碼

我跟蹤鼠標位置:

 var pos = getMousePos(canvas, evt); 
     mousePos.x = pos.x; 
     mousePos.y = pos.y; 

回答

1

這應該做的伎倆:

HTML:

<div style="position: relative"> 
    <canvas /> 
    <div style="position: absolute" id="floatingDiv">Floating div</div> 
</div> 

的Javascript:

var pos = getMousePos(canvas, evt); 
mousePos.x = pos.x; 
mousePos.y = pos.y; 
var floatingDiv = document.getElementById('floatingDiv'); 
floatingDiv.style.top = pos.y + 'px'; 
floatingDiv.style.left = pos.x + 'px'; 
+0

關閉但並不完全爲我工作(在Firefox或Chrome中)。主畫布以頁面爲中心,div最終放置在頁面的左上角,而不是相對於畫布。在Floating div中將「position:absolute」改爲「position:relative」將其置於畫布下方。 – 2013-02-27 16:13:25

+0

而不是居中畫布,你應該居中相對定位的元素。 – sroes 2013-02-27 16:15:04

+0

@ Sander:如果你的意思是包含div,那就是我所做的。 – 2013-02-27 16:21:37