2010-08-17 56 views
2

我有一個HTML div div的容器,如果我將它懸停在它們上面,CSS的背景顏色會發生變化。我想在容器頂部覆蓋一塊畫布,以便繪製線條。問題是當畫布疊加時,div的懸停變化不再起作用。有沒有方法來覆蓋畫布,但仍然CSS或JavaScript onmouseover事件仍然在下面的元素上工作?如何使用畫布下的HTML元素

回答

3

所以你想要一個透明的畫布,通過所有的鼠標事件,除了點擊後面的元素?恕我直言,你需要使用JS:捕獲畫布上的所有事件,然後手動將它們傳遞到畫布後面的div。如果您有多個div,您需要根據鼠標的(x,y)座標進行某種查找。

0

經歷所有這些麻煩的替代方法是使用pointer-events CSS屬性。 MozillaWebkit和IE6-8(excanvas)都支持這一點。歌劇不,但我真的不在乎。

<canvas style="pointer-events:none;"></canvas>