Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用fabric.js显示适用的控件_Javascript_Jquery_Fabricjs - Fatal编程技术网

Javascript 使用fabric.js显示适用的控件

Javascript 使用fabric.js显示适用的控件,javascript,jquery,fabricjs,Javascript,Jquery,Fabricjs,使用fabric.js,我将如何仅在选中文本时隐藏/显示控件(如文本控件)?现在我有一个按钮,可以让人插入文本和文本编辑选项,但我并不总是希望显示这个。理想情况下,它会是一个弹出式选择时 现在,我的代码是: //从本地添加图像 var canvas=newfabric.canvas('c'); document.getElementById('file').addEventListener(“更改”,函数(e){ var file=e.target.files[0]; var reader=n

使用fabric.js,我将如何仅在选中文本时隐藏/显示控件(如文本控件)?现在我有一个按钮,可以让人插入文本和文本编辑选项,但我并不总是希望显示这个。理想情况下,它会是一个弹出式选择时

现在,我的代码是:

//从本地添加图像
var canvas=newfabric.canvas('c');
document.getElementById('file').addEventListener(“更改”,函数(e){
var file=e.target.files[0];
var reader=new FileReader();
reader.onload=函数(f){
var数据=f.target.result;
fabric.Image.fromURL(数据、函数(img)){
var oImg=img.set({
左:0,,
排名:0,
角度:00,,

笔划:“#f0f0”,//以下是您实现该目标的方法

  • 使用div元素包装文本控件,并将
    hidden
    属性设置为默认隐藏
  • 添加以下鼠标事件,使控件分别在文本选择和取消选择时显示和隐藏


ᴅᴇᴍᴏ

//从本地添加图像
var canvas=newfabric.canvas('c');
//显示/隐藏控件
canvas.on('object:selected',函数(e){
document.getElementById('trash').hidden=false;
document.getElementById('forward')。hidden=false;
document.getElementById('back')。hidden=false;
如果(e.target.type=='i-text'){
document.getElementById('textControls')。hidden=false;
}
});
canvas.on('before:selection:cleared',函数(e){
document.getElementById('trash').hidden=true;
document.getElementById('forward')。hidden=true;
document.getElementById('back')。hidden=true;
如果(e.target.type=='i-text'){
document.getElementById('textControls')。hidden=true;
}
});
document.getElementById('file').addEventListener(“更改”,函数(e){
var file=e.target.files[0];
var reader=new FileReader();
reader.onload=函数(f){
var数据=f.target.result;
fabric.Image.fromURL(数据、函数(img)){
var oImg=img.set({
左:0,,
排名:0,
角度:00,,

笔划:“#f0f0”,//以下是您实现该目标的方法

  • 使用div元素包装文本控件,并将
    hidden
    属性设置为默认隐藏
  • 添加以下鼠标事件,使控件分别在文本选择和取消选择时显示和隐藏


ᴅᴇᴍᴏ

//从本地添加图像
var canvas=newfabric.canvas('c');
//显示/隐藏控件
canvas.on('object:selected',函数(e){
document.getElementById('trash').hidden=false;
document.getElementById('forward')。hidden=false;
document.getElementById('back')。hidden=false;
如果(e.target.type=='i-text'){
document.getElementById('textControls')。hidden=false;
}
});
canvas.on('before:selection:cleared',函数(e){
document.getElementById('trash').hidden=true;
document.getElementById('forward')。hidden=true;
document.getElementById('back')。hidden=true;
如果(e.target.type=='i-text'){
document.getElementById('textControls')。hidden=true;
}
});
document.getElementById('file').addEventListener(“更改”,函数(e){
var file=e.target.files[0];
var reader=new FileReader();
reader.onload=函数(f){
var数据=f.target.result;
fabric.Image.fromURL(数据、函数(img)){
var oImg=img.set({
左:0,,
排名:0,
角度:00,,

笔划:'#f0',//嘿@ℊααnd我想知道,当我选择任何对象时,你是否知道如何切换上述导航的一部分。我希望能够选择任何对象并查看
垃圾倒转
,但只有在选择后。谢谢。我想我现在明白了。我很感激。嘿@ℊααnd我想知道当我选择任何对象时,你是否知道我如何切换上述导航的一部分。我希望能够选择任何对象并查看
垃圾转发
,但只有在选择时。谢谢。我想我现在明白了。我很感激。
canvas.on('object:selected', function(e) {
  if (e.target.type === 'i-text') {
    document.getElementById('textControls').hidden = false;
  }
});
canvas.on('before:selection:cleared', function(e) {
  if (e.target.type === 'i-text') {
    document.getElementById('textControls').hidden = true;
  }
});