files/en-us/web/api/webgl_lose_context/index.md
{{APIRef("WebGL")}}
The WEBGL_lose_context extension is part of the WebGL API and exposes functions to simulate losing and restoring a {{domxref("WebGLRenderingContext")}}.
WebGL extensions are available using the {{domxref("WebGLRenderingContext.getExtension()")}} method. For more information, see also Using Extensions in the WebGL tutorial.
[!NOTE] This extension is available to both, {{domxref("WebGLRenderingContext", "WebGL1", "", 1)}} and {{domxref("WebGL2RenderingContext", "WebGL2", "", 1)}} contexts.
With this extension, you can simulate the webglcontextlost and webglcontextrestored events:
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
canvas.addEventListener("webglcontextlost", (event) => {
console.log(event);
});
gl.getExtension("WEBGL_lose_context").loseContext();
// WebGLContextEvent event with type "webglcontextlost" is logged.
{{Specifications}}
{{Compat}}
webglcontextlost, webglcontextrestored, webglcontextcreationerror