2014-10-20 370 views
1

我尝试为Fabric.js的画布对象使用全屏模式(HTML5全屏)。使用fabric.js的画布全屏模式

var canvas = fabricCanvas.getSelectionElement(); 
if(canvas.requestFullScreen) { 
    canvas.requestFullScreen(); 
} 
else if(canvas.webkitRequestFullScreen) { 
    canvas.webkitRequestFullScreen(); 
} 
else if(canvas.mozRequestFullScreen) { 
    canvas.mozRequestFullScreen(); 
} 

问题是,事件不能在全屏模式下工作。我想这是由于在布料中使用2个画布引起的:绘制时较低,事件时较高。在传递到全屏模式期间,较低的画布变成“较高”。此外,我试过:

var canvas = fabricCanvas.getSelectionElement(); 

在这种情况下,有事件,但没有可视化。任何想法如何解决这个问题?

回答

1

将包含选择和canvas元素的容器带到全屏。我不是超级熟悉面料,你可以尝试

var canvas = fabricCanvas.getSelectionElement().parentNode; 
if(canvas.requestFullScreen) { 
    canvas.requestFullScreen(); 
} 
else if(canvas.webkitRequestFullScreen) { 
    canvas.webkitRequestFullScreen(); 
} 
else if(canvas.mozRequestFullScreen) { 
    canvas.mozRequestFullScreen(); 
} 

有可能是在fabric.js一个更好的方式来获得比.parentNode容器的保持。

+0

谢谢。您的解决方案很好。 – 2014-10-20 11:59:16