用js计算鼠标相对画布的坐标,但是这个坐标不是鼠标箭头所指的那个点的坐标,而是鼠标图形最下面那个点的坐标,求高手解决!!!

解决方案 »

  1.   

    posX = event.pageX - this.div.offset().left;
    posY = event.pageY - this.div.offset().top;
      

  2.   

    //获取鼠标相对于文档的坐标
    function mousePosition(ev){
    if(ev.pageX || ev.pageY){
    return {x:ev.pageX, y:ev.pageY};
    }
    return {
    x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
    y:ev.clientY + document.body.scrollTop - document.body.clientTop
    };
    }function mouseMove(ev){
    ev = ev || window.event;
    var mousePos = mousePosition(ev);//返回鼠标坐标
    document.getElementById('xxx').value = mousePos.x;//
    document.getElementById('yyy').value = mousePos.y;//如果需要鼠标底部的坐标Y轴向下偏移大概16个像素  修改为 mousePos.y+16
    }
    document.onmousemove = mouseMove;
      

  3.   

    鼠标相对于页面的坐标(event.pageX,event.PageY) - canvas的坐标(offsetLeft和offsetTop)