// TODO { a : 1, A : 2, _ : 3,,, }\r
X_Node_Selector__ALPHABET = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-0123456789\\',\r
X_Node_Selector__NUMBER = '+-0123456789';\r
- \r
+\r
+// XMLWrapper のために今だけ外部に公開\r
+X_NodeSelector_parse = X_Node_Selector__parse;\r
+ \r
/*\r
* セレクタ文字列の解析、但し一挙に行わず、ひと塊づつ\r
* 結合子 + 単体セレクタ( タグ,*,#,.,[],: )\r
break;\r
default :\r
};\r
+ \r
+ if( phase === 0xf ) return i;\r
+ \r
//alert( chr + ' ' + phase + ' ' + selector + ' ' + name + ' ' + name1st )\r
if( phase === 0xe ){\r
if( selector === 4 ){// :not\r
if( name === 'not' ){\r
- if( not ) return i; // error\r
- not = true;\r
- selector = 0;\r
- phase = 0x0;\r
- name = null;\r
- continue;\r
+ if( not ){\r
+ return i; // error\r
+ } else {\r
+ not = true;\r
+ selector = 0;\r
+ phase = 0x0;\r
+ name = null; \r
+ };\r
+ //continue;\r
} else\r
if( name === 'lang' || name === 'contains' ){\r
result = [ not ? 0 : combinator, selector, name, value ];\r
result = [ not ? 0 : combinator, selector, name, a, b ];\r
break; \r
};\r
+ } else {\r
+ result =\r
+ combinator === 5 ?\r
+ 5 :\r
+ selector === 5 ?\r
+ [ not ? 0 : combinator, selector, key, operator, value ] :\r
+ [ not ? 0 : combinator, selector, name.split( '\\' ).join( '' ) ];\r
+ break; \r
};\r
- result =\r
- combinator === 5 ?\r
- 5 :\r
- selector === 5 ?\r
- [ not ? 0 : combinator, selector, key, operator, value ] :\r
- [ not ? 0 : combinator, selector, name.split( '\\' ).join( '' ) ];\r
- break;\r
- } else\r
- if( phase === 0xf ) return i;\r
+ };\r
\r
escape = chr === '\\' && !escape;\r
};\r