国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

javascript - Verwenden Sie Canvas, um eine elektronische Signatur zu implementieren und die Koordinaten der Maus im Canvas zu positionieren
巴扎黑
巴扎黑 2017-05-16 13:36:00
0
1
737

Beim Versuch, die Leinwand zur Implementierung elektronischer Signaturen zu verwenden, k?nnen die Koordinaten der Maus auf der Leinwand nicht genau ermittelt werden.

let canvas = document.getElementById("canvas");
let cxt = canvas.getContext('2d');
canvas.onmousedown = function(ev){
    var ev = ev || window.event;
    cxt.moveTo(ev.clientX-canvas.offsetLeft,ev.clientY-canvas.offsetTop);
    document.onmousemove = function(ev){
      var ev = ev || window.event;
      cxt.lineTo(ev.clientX-canvas.offsetLeft,ev.clientY-canvas.offsetTop);
      cxt.stroke();
    };

    document.onmouseup = function(){
      document.onmousemove = null;
      document.onmouseup = null;
    };
};

Verwenden Sie ev.clientY 獲取了鼠標的坐標,但是 canvas.offsetTop 獲取的是 距離父元素的高度。而 canvas in einem Formular mit Bildlaufleisten, sodass es nicht genau positioniert werden kann.

Danke!

巴扎黑
巴扎黑

Antworte allen(1)
巴扎黑

已經找到解決方法了。直接調用 canvas.getBoundingClientRect() 可以獲取到 canvas 相對于視窗到位置。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage