diff --git a/src/core/main.js b/src/core/main.js index 36db13d4e5..3d9c18292d 100644 --- a/src/core/main.js +++ b/src/core/main.js @@ -615,16 +615,16 @@ class p5 { // unregister events sketch-wide for (const ev in this._events) { - window.removeEventListener(ev, this._events[ev]); + if(this._events[ev])window.removeEventListener(ev, this._events[ev]); } // remove DOM elements created by p5, and listeners for (const e of this._elements) { - if (e.elt && e.elt.parentNode) { + if(e.elt && e.elt.parentNode) { e.elt.parentNode.removeChild(e.elt); } for (const elt_ev in e._events) { - e.elt.removeEventListener(elt_ev, e._events[elt_ev]); + if (e.elt && e._events[elt_ev]) e.elt.removeEventListener(elt_ev, e._events[elt_ev]); } }