var matchesImpl; /** * Checks if a given element matches a selector. * * @param node the element * @param selector the selector */ export default function matches(node, selector) { if (!matchesImpl) { var body = document.body; var nativeMatch = body.matches || body.matchesSelector || body.webkitMatchesSelector || body.mozMatchesSelector || body.msMatchesSelector; matchesImpl = function matchesImpl(n, s) { return nativeMatch.call(n, s); }; } return matchesImpl(node, selector); }