這篇文章主要介紹了HTML5 Canvas如何實現(xiàn)事件感應(yīng),具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
站在用戶的角度思考問題,與客戶深入溝通,找到丘北網(wǎng)站設(shè)計與丘北網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、虛擬主機、企業(yè)郵箱。業(yè)務(wù)覆蓋丘北地區(qū)。
在實際的開發(fā)過程中,對于Canvas來說,某一區(qū)域的鼠標(biāo)事件感應(yīng)是一件非常重要而常見的需求,本節(jié)會提供一個感應(yīng)事件的示例代碼。
在下面代碼中,我們對整個Canvas的click和mouseover事件進行了監(jiān)聽,并在此事件執(zhí)行時,產(chǎn)生響應(yīng)觸發(fā)效果。
var mycanvas = document.getElementById("mycanvas");
var ctx = mycanvas.getContext('2d');
ctx.fillStyle="blue";
ctx.fillRect(100,100,100,100); //設(shè)定感應(yīng)區(qū)為(100,100)和(100,100)構(gòu)成的矩形區(qū)域
function check(event){
console.log(event.clientX+"-"+event.clientY);
if((event.clientX>=100 && event.clientX<=200 && event.clientY>=100 &&
event.clientY<=200)){ //判定是否在感應(yīng)區(qū)中
ctx.clearRect(0,0,500,500);
ctx.fillStyle="rgba(100,100,100,0.5)";
ctx.shadowOffsetX = 10;
ctx.shadowOffsetY = 10;
ctx.shadowBlur = 5;
ctx.shadowColor = "rgba(0, 0, 0, 0.9)"; //陰影的顏色,透明度為0.9
ctx.fillRect(100,100,100,100);
}
else
{
ctx.fillStyle="blue";
ctx.fillRect(100,100,100,100); //設(shè)定感應(yīng)區(qū)為(100,100)和(100,100)構(gòu)成的矩形區(qū)域
}
}
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“HTML5 Canvas如何實現(xiàn)事件感應(yīng)”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!