Canvas 如何在fabric.js画布中引入基于密钥的事件?

Canvas 如何在fabric.js画布中引入基于密钥的事件?,canvas,fabricjs,dom-events,keydown,cleartext,Canvas,Fabricjs,Dom Events,Keydown,Cleartext,我在跟着下面的提琴。 我下面的代码如下: var canvas = new fabric.Canvas('container'); var oText = new fabric.IText('Tap and Type', { left: 0, top: 0, fontFamily: 'Bree Serif', fontSize: 22, cache: false }); canvas.on("mouse:over", clearText); function clearText

我在跟着下面的提琴。

我下面的代码如下:

 var canvas = new fabric.Canvas('container');
 var oText = new fabric.IText('Tap and Type', {
 left: 0,
 top: 0,
 fontFamily: 'Bree Serif',
 fontSize: 22,
 cache: false
 });
canvas.on("mouse:over", clearText);
function clearText(e) {
if (e.target.type === "i-text") {
if (e.target.text === "Tap and Type") {
e.target.text = "";
canvas.renderAll();
};
}
}
canvas.add(oText);
在上面的代码中,我正在实现与鼠标相关的事件,例如我正在实现
mouse:over
。当我将鼠标悬停在文本上时,我成功地实现了明文功能

但我希望当我按下某个键时,它会清除文本


我查看了这个链接:-添加
mouse:over
功能,但我不知道如何在我的结构画布中添加keydown事件。请提供帮助。

画布上没有按键事件,因此我们必须在文档上设置它们,并在鼠标上方抓取所选对象,然后在鼠标移出事件上重置

var canvas=newfabric.canvas('container');
var oText=new fabric.IText('Tap and Type',{left:0,top:0});
canvas.add(oText);
var circle=新的结构圆({左:20,上:90,半径:25});
canvas.add(圆圈);
var objSelected=null
canvas.on(“鼠标:上方”,函数(e){
如果(如目标){
e、 target.set('fill','green');
canvas.renderAll();
objSelected=e.target
}
});
canvas.on('mouse:out',函数(e){
如果(如目标){
e、 target.set('fill','black');
canvas.renderAll();
}
objSelected=null
});
document.onkeydown=函数(e){
if(objSelected){
开关(如钥匙代码){
案例46://删除
if(objSelected.type==“i-text”){
objSelected.text=“”
}
}
canvas.renderAll();
}
}

画布上没有按键事件,因此我们必须在文档上设置它们,并在鼠标上方抓取选定对象,然后在鼠标退出事件时重置

var canvas=newfabric.canvas('container');
var oText=new fabric.IText('Tap and Type',{left:0,top:0});
canvas.add(oText);
var circle=新的结构圆({左:20,上:90,半径:25});
canvas.add(圆圈);
var objSelected=null
canvas.on(“鼠标:上方”,函数(e){
如果(如目标){
e、 target.set('fill','green');
canvas.renderAll();
objSelected=e.target
}
});
canvas.on('mouse:out',函数(e){
如果(如目标){
e、 target.set('fill','black');
canvas.renderAll();
}
objSelected=null
});
document.onkeydown=函数(e){
if(objSelected){
开关(如钥匙代码){
案例46://删除
if(objSelected.type==“i-text”){
objSelected.text=“”
}
}
canvas.renderAll();
}
}