javascript - canvas 如何获得内部的光标位置
天蓬老师
天蓬老师 2017-04-10 14:45:52
[JavaScript讨论组]

canvas 生成的图片,当鼠标移动到 canvas 里时,如何获取光标相对于 canvas 的坐标?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
黄舟
<p class="container">
    <canvas id="getMousePos" width="500" height="500"></canvas>
</p>
<script>
    var oGetMousePos = document.getElementById("getMousePos");
    var oContext = oGetMousePos.getContext("2d");

    //打印鼠标指针坐标
    function writeMessage (oGetMousePos,message) {
        oContext.clearRect(0, 0, oGetMousePos.width, oGetMousePos.height);
        oContext.font = "20pt Microsoft JhengHei";
        oContext.fillStyle = "tomato";
        oContext.fillText(message, 10, 25);
    };
    //获取鼠标指针坐标
    function getMousePos (oContext, evt) {
        var rect = oGetMousePos.getBoundingClientRect();
        return {
            x: evt.clientX - rect.left,
            y: evt.clientY - rect.top
        };
    }
    //监听鼠标移动
    oGetMousePos.addEventListener("mousemove", function(evt){
        var mousePos = getMousePos(oGetMousePos, evt);
        var message = "鼠标指针坐标:" + mousePos.x + "," + mousePos.y;
        writeMessage(oGetMousePos, message);
    },false);
</script>

可参考:http://canvas.migong.org/getmousepos

伊谢尔伦

和普通的结点没有什么区别:

$('#your-canvas-id').on('mousemove', function(e) {
    console.log(e.offsetX, e.offsetY);
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号