我試圖在畫布中繪製圖像,然後嘗試用鼠標單擊圖像內部。但是X和Y的位置不正確,我考慮了偏移量並對其進行了修正,但它們仍然不正確。X和Y在帶有偏移的畫布中不匹配
我目前不知道如何解決它。我做了一個小提琴來複制包括畫布所在的父div在內的情況。
我使用的代碼,以彌補考慮,這似乎並不奏效:
function getxy(event,el){
canvasX = event.pageX - el.offsetLeft,
canvasY = event.pageY - el.offsetTop;
return {x:canvasX, y:canvasY}
//does not give the same answer as you would expect when using drawImage();
}
在撥弄畫布的左上角應0,0
但它不是根據我使用的計算。
試圖在計算中去除保證金和邊框像素? – rps
我還沒有 - 我認爲抵消了考慮= /我將如何納入他們? – Sir
您的元素offsetLeft始終爲0,因爲您將餘裕應用於其父項......將其更改爲: 'canvasX = event.pageX - el.parentNode.offsetLeft,'http://jsfiddle.net/bX5Dr/9/ – JayMoretti