UNPKG

axe-core

Version:

Accessibility engine for automated Web UI testing

22 lines (20 loc) 554 B
/** * Array#sort callback to sort nodes by DOM order * @private * @param {Node} nodeA * @param {Node} nodeB * @return {Integer} @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Sort */ axe.utils.nodeSorter = function nodeSorter(nodeA, nodeB) { /*eslint no-bitwise: 0 */ nodeA = nodeA.actualNode || nodeA; nodeB = nodeB.actualNode || nodeB; if (nodeA === nodeB) { return 0; } if (nodeA.compareDocumentPosition(nodeB) & 4) { return -1; // a before b } else { return 1; // b before a } };