MCPcopy Index your code
hub / github.com/JsAaron/jQuery / Sizzle

Function Sizzle

2.0.3/2.0.3.js:1053–1160  ·  view source on GitHub ↗
( selector, context, results, seed )

Source from the content-addressed store, hash-verified

1051 }
1052
1053 function Sizzle( selector, context, results, seed ) {
1054 var match, elem, m, nodeType,
1055 // QSA vars
1056 i, groups, old, nid, newContext, newSelector;
1057
1058 if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
1059 setDocument( context );
1060 }
1061
1062 context = context || document;
1063 results = results || [];
1064
1065 if ( !selector || typeof selector !== "string" ) {
1066 return results;
1067 }
1068
1069 if ( (nodeType = context.nodeType) !== 1 && nodeType !== 9 ) {
1070 return [];
1071 }
1072
1073 if ( documentIsHTML && !seed ) {
1074
1075 // Shortcuts
1076 if ( (match = rquickExpr.exec( selector )) ) {
1077 // Speed-up: Sizzle("#ID")
1078 if ( (m = match[1]) ) {
1079 if ( nodeType === 9 ) {
1080 elem = context.getElementById( m );
1081 // Check parentNode to catch when Blackberry 4.6 returns
1082 // nodes that are no longer in the document #6963
1083 if ( elem && elem.parentNode ) {
1084 // Handle the case where IE, Opera, and Webkit return items
1085 // by name instead of ID
1086 if ( elem.id === m ) {
1087 results.push( elem );
1088 return results;
1089 }
1090 } else {
1091 return results;
1092 }
1093 } else {
1094 // Context is not a document
1095 if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&
1096 contains( context, elem ) && elem.id === m ) {
1097 results.push( elem );
1098 return results;
1099 }
1100 }
1101
1102 // Speed-up: Sizzle("TAG")
1103 } else if ( match[2] ) {
1104 push.apply( results, context.getElementsByTagName( selector ) );
1105 return results;
1106
1107 // Speed-up: Sizzle(".CLASS")
1108 } else if ( (m = match[3]) && support.getElementsByClassName && context.getElementsByClassName ) {
1109 push.apply( results, context.getElementsByClassName( m ) );
1110 return results;

Callers 2

2.0.3.jsFile · 0.70
multipleContextsFunction · 0.70

Calls 3

tokenizeFunction · 0.70
toSelectorFunction · 0.70
selectFunction · 0.70

Tested by

no test coverage detected