Brought back the compareDocumentPosition code. While it is redundant in Firefox it's much faster than using indexOf.
This commit is contained in:
parent
8d9aa015c1
commit
4b7e1c906f
2 changed files with 12 additions and 4 deletions
|
@ -684,7 +684,15 @@ try {
|
|||
|
||||
var sortOrder;
|
||||
|
||||
if ( Array.prototype.indexOf ) {
|
||||
if ( document.documentElement.compareDocumentPosition ) {
|
||||
sortOrder = function( a, b ) {
|
||||
var ret = a.compareDocumentPosition(b) & 4 ? -1 : a === b ? 0 : 1;
|
||||
if ( ret === 0 ) {
|
||||
hasDuplicate = true;
|
||||
}
|
||||
return ret;
|
||||
};
|
||||
} else if ( Array.prototype.indexOf ) {
|
||||
var indexOf = Array.prototype.indexOf,
|
||||
allSort = document.getElementsByTagName("*");
|
||||
|
||||
|
@ -695,7 +703,7 @@ if ( Array.prototype.indexOf ) {
|
|||
}
|
||||
return ret;
|
||||
};
|
||||
} else if ( document.documentElement.sourceIndex === 1 ) {
|
||||
} else if ( "sourceIndex" in document.documentElement ) {
|
||||
sortOrder = function( a, b ) {
|
||||
var ret = a.sourceIndex - b.sourceIndex;
|
||||
if ( ret === 0 ) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue