This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The non-standard HTMLCanvasElement.mozOpaque property is a Boolean reflecting the moz-opaque HTML attribute of the <canvas> element. It lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized.

This has been standardized as setting the alpha option to false when creating a drawing context with HTMLCanvasElement.getContext(). Use of mozOpaque should be avoided. Firefox will stop supporting it in the future.


var opaque = canvas.mozOpaque;
canvas.mozOpaque = true;


Given this <canvas> element:

<canvas id="canvas" width="300" height="300" moz-opaque></canvas>

You can get or set the mozOpaque property. For example, you could conditionally set it to true if mimeType == 'image/jpeg', or similar, to gain performance in your application when translucency is not needed.

var canvas = document.getElementById('canvas');
console.log(canvas.mozOpaque); // true
// deactivate it
canvas.mozOpaque = false;


Not part of any standard.

Browser compatibility

BCD tables only load in the browser

See also