我正在构建一个 HTML5 画布应用程序。在那我需要在画布上添加一个文本,在画布上拖放和调整它的大小。
问问题
1401 次
1 回答
0
基于这两个例子:
http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_draganddrop http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_canvas_tut_text
我已经建立了一个示例,可以帮助您完成您需要做的事情:http: //jsbin.com/ufiSilu/1/
JavaScript 代码:
function allowDrop(ev)
{
ev.preventDefault();
}
function drag(ev)
{
ev.dataTransfer.setData("Text",ev.target.id);
}
function drop(ev)
{
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font="30px Arial";
ctx.fillText(document.getElementById(data).innerHTML,10,50);
}
HTML:
<canvas id="myCanvas" width="200" height="100"
ondrop="drop(event)" ondragover="allowDrop(event)">
</canvas>
<p id="myText" draggable="true" ondragstart="drag(event)"> drag me </p>
CSS:
#myCanvas {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
希望能帮助到你。
于 2013-10-09T11:14:03.793 回答