You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
621 B

2 months ago
  1. import getWindow from "./getWindow.js";
  2. function isElement(node) {
  3. var OwnElement = getWindow(node).Element;
  4. return node instanceof OwnElement || node instanceof Element;
  5. }
  6. function isHTMLElement(node) {
  7. var OwnElement = getWindow(node).HTMLElement;
  8. return node instanceof OwnElement || node instanceof HTMLElement;
  9. }
  10. function isShadowRoot(node) {
  11. // IE 11 has no ShadowRoot
  12. if (typeof ShadowRoot === 'undefined') {
  13. return false;
  14. }
  15. var OwnElement = getWindow(node).ShadowRoot;
  16. return node instanceof OwnElement || node instanceof ShadowRoot;
  17. }
  18. export { isElement, isHTMLElement, isShadowRoot };