Skip to content

can't delete window.onpagehide #2140

@asos-luissilva

Description

@asos-luissilva

Basic info:

Since I migrated for the new version jsdom, looks like I can't delete window.onpagehide since is a property of his prototype.

  • Node.js version: v8.9.4
  • jsdom version: 11.6.2

Minimal reproduction case

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const { window } = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);

console.log(Object.getOwnPropertyDescriptor(window, "onpagehide")); // undefined
console.log("before", window.onpagehide); // null
console.log(delete window.onpagehide); // true
console.log("after", window.onpagehide); // null

How does similar code behave in browsers?

// Mac 10.11.6 (15G1421)
// in Chrome Version 63.0.3239.84 (Official Build) (64-bit)

console.log(Object.getOwnPropertyDescriptor(window, "onpagehide")); // {get: ƒ, set: ƒ, enumerable: true, configurable: true}
console.log("before", window.onpagehide); // null
console.log(delete window.onpagehide); // true
console.log("after", window.onpagehide); // undefined

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions