2013-03-05 105 views
0

我需要防止在畫布的某些地方點擊。例如;下面的畫布。在(0,250) - (0,300)座標之間爲(x,y),如果用戶在此間隔中的任何地方點擊,則不會有任何結果。點擊在畫布上被禁止

<script> 

window.onload = function(){ 
    document.getElementById('lbltipAddedComment').innerHTML = ' '; 
    var canvas = document.getElementById("myCanvas"); 
    var context = canvas.getContext("2d"); 
} 
</script> 

<div id="ccontainer"> 
<canvas id="myCanvas" width="800" height="500"></canvas> 
</div> 

回答

2

畫布不響應點擊它自己。它需要代碼才能這樣做。因此,默認情況下,整個畫布上禁止單擊。您的代碼將使其對點擊產生反應。所以,只需編寫您的代碼,以您希望的方式對點擊做出反應。

一個簡單的方法可以在畫布上放置一個透明的html元素(使用CSS定位它)。設置一個點擊式處理器,可能使用JQuery,所以當點擊這個透明元素時,它會執行你想要的操作。

+0

感謝您的回答。我是html編碼的新手,所以我無法完全理解。我在畫布上的禁區有不同的物品。在我的項目中,點擊事件應該是動態的。我可以首先在畫布上點擊任何地方,然後在某些地方點擊將被禁止。 – user1942359 2013-03-05 13:31:24

+0

如果用戶點擊畫布繪製的對象,那麼你可能會更好使用其他的東西,我強烈建議使用Raphael.js,因爲它允許將點擊處理程序分配給特定對象,然後您可以刪除點擊將會,特別是點擊區域與對象相關聯。 – Jodes 2013-03-05 15:47:17