HTMLCanvasElement: transferControlToOffscreen() method
Baseline 2023
Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
The HTMLCanvasElement.transferControlToOffscreen()
method transfers control to an OffscreenCanvas
object, either on the main thread or on a worker.
Syntax
js
transferControlToOffscreen()
Parameters
None.
Return value
An OffscreenCanvas
object.
Exceptions
InvalidStateError
DOMException
-
Throws if:
- the canvas has been set a context mode by calling
HTMLCanvasElement.getContext()
- the canvas has transferred its control to offscreen by calling
HTMLCanvasElement.transferControlToOffscreen()
.
- the canvas has been set a context mode by calling
Examples
The following example shows how to transfer control to an OffscreenCanvas
object on the main thread.
js
const htmlCanvas = document.createElement("canvas");
const offscreen = htmlCanvas.transferControlToOffscreen();
const gl = offscreen.getContext("webgl");
// Some drawing using the gl context…
The following example shows how to transfer control to an OffscreenCanvas
object on a worker.
js
const offscreen = document.querySelector("canvas").transferControlToOffscreen();
const worker = new Worker("my-worker-url.js");
worker.postMessage({ canvas: offscreen }, [offscreen]);
Specifications
Specification |
---|
HTML Standard # dom-canvas-transfercontroltooffscreen-dev |
Browser compatibility
BCD tables only load in the browser
See also
- The interface defining this method,
HTMLCanvasElement
OffscreenCanvas