js通过canvas实现画笔功能手记
Jul 14, 2017 am 10:26 AM相信大家对flash的画线功能都并不陌生,我以前也用flash的actionscript写过类似的功能,不过鉴于flash已经是被淘汰了的技术,
下面我们介绍如何通过html5的canvas标签结合javascript实现画板功能,
代码如下:
<script src="http://www.php.cn/static/home/js/jquery.min.js"></script> <canvas id="paintcanvas" width="600" height="700"></canvas> <script> var paint; var clickX=[]; var clickY=[]; var clickDrag=[]; function addClick(x,y,dragging) { clickX.push(x); clickY.push(y); clickDrag.push(dragging); } function redraw() { paintcanvas.strokeStyle = "#df4b26"; paintcanvas.lineJoin = "round"; paintcanvas.lineWidth = 5; for(var i=0; i < clickX.length; i++) { paintcanvas.beginPath(); if(clickDrag[i] && i){//当是拖动而且i!=0时,从上一个点开始画线。 paintcanvas.moveTo(clickX[i-1], clickY[i-1]); }else{ paintcanvas.moveTo(clickX[i]-1, clickY[i]); } paintcanvas.lineTo(clickX[i], clickY[i]); paintcanvas.closePath(); paintcanvas.stroke(); } } paintcanvas=$('#paintcanvas')[0].getContext("2d"); $('#paintcanvas').mousedown(function(e){ var mouseX=e.pageX-this.offsetLeft; var mouseY=e.pageY-this.offsetTop; paint=true; addClick(e.pageX-this.offsetLeft,e.pageY-this.offsetTop); redraw(); }); $('#paintcanvas').mousemove(function(e){ if(paint){ addClick(e.pageX-this.offsetLeft,e.pageY-this.offsetTop,true); redraw(); } }); $('#paintcanvas').mouseup(function(e){ paint = false; }); $('#paintcanvas').mouseleave(function(e){ paint = false; }); </script>
其中,通过mousedown, mousemove, mouseup, mouseleave等js事件实现画线功能。
本文由php中文网提供,
原文地址:http://www.php.cn/js-tutorial-374130.html
请勿转载~~~~
Atas ialah kandungan terperinci js通过canvas实现画笔功能手记. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk melaksanakan sistem pengecaman pertuturan dalam talian menggunakan WebSocket dan JavaScript

WebSocket dan JavaScript: teknologi utama untuk melaksanakan sistem pemantauan masa nyata

JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap

Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP

Aliran pembangunan dan prospek masa depan Kanvas dalam sektor pendidikan China

Bagaimana untuk mendapatkan kod status HTTP dalam JavaScript dengan cara yang mudah

Ketahui rangka kerja kanvas dan terangkan rangka kerja kanvas yang biasa digunakan secara terperinci

Terokai peranan berkuasa dan aplikasi kanvas dalam pembangunan permainan
