lastHtml = html,\r
chars, last, text, index;\r
\r
- while ( html ) {\r
+ while( html ){\r
chars = true;\r
last = stack[ stack.length - 1 ];\r
\r
// Make sure we're not in a script or style element\r
- if ( last && special[ handler.isXML ? last.toUpperCase() : last ] === 1 ) {\r
+ if( last && special[ handler.isXML ? last.toUpperCase() : last ] === 1 ){\r
if( 0 <= ( index = html.toUpperCase().indexOf( '</' + ( handler.isXML ? last.toUpperCase() : last ) ) ) ){\r
handler.chars( html.substring( 0, index ) );\r
if( index = X_HTMLParser__parseEndTag( stack, handler, html ) ){\r
};\r
} else {\r
// Comment\r
- if ( html.indexOf("<!--") === 0 ) {\r
- if ( 0 < ( index = html.indexOf("-->") ) ) {\r
+ if( html.indexOf("<!--") === 0 ){\r
+ if( 0 < ( index = html.indexOf("-->") ) ){\r
handler.comment( html.substring( 4, index ) );\r
html = html.substring( index + 3 );\r
chars = false;\r
};\r
\r
// end tag\r
- } else if ( html.indexOf("</") === 0 ) {\r
- if ( 2 < ( index = X_HTMLParser__parseEndTag( stack, handler, html ) ) ) {\r
+ } else if( html.indexOf("</") === 0 ){\r
+ if( 2 < ( index = X_HTMLParser__parseEndTag( stack, handler, html ) ) ){\r
html = html.substring( index );\r
chars = false;\r
};\r
\r
// start tag\r
- } else if ( html.indexOf("<") === 0 ) {\r
+ } else if( html.indexOf("<") === 0 ){\r
if( index = X_HTMLParser__parseStartTag( stack, last, handler, html ) ){\r
html = html.substring( index );\r
chars = false;\r
};\r
};\r
\r
- if ( chars ) {\r
+ if( chars ){\r
index = html.indexOf("<");\r
\r
text = index < 0 ? html : html.substring( 0, index );\r
case 4 : // 属性名の終わりを待つ\r
chr === '=' ?\r
( ( phase = 6 ) && ( attrName = html.substring( start, i ) ) ) :\r
- ( whiteSpace[ chr ] & 16 ) &&\r
- ( ( phase = 5 ) && ( attrName = html.substring( start, i ) ) );\r
+ ( whiteSpace[ chr ] & 16 ) ?\r
+ ( ( phase = 5 ) && ( attrName = html.substring( start, i ) ) ) :\r
+ ( chr === '>' || ( empty = html.substr( i, 2 ) === '/>' ) ) &&\r
+ ( ( phase = 9 ) && ( attrs[ attrs.length ] = html.substring( start, i ) ) );\r
break;\r
case 5 : // 属性の = または次の属性または htmlタグの閉じ\r
!( whiteSpace[ chr ] & 16 ) &&// ie4 未対応の属性には cite = http:// となる\r
// 1 :\r
( alphabets[ chr ] & 3 ) ?\r
- ( ( phase = 4 ) && ( attrs[ attrs.length ] = attrName ) && ( start = i ) ) :\r
+ ( ( phase = 3 ) && ( attrs[ attrs.length ] = attrName ) && ( start = i ) ) : // <textarea readonly>\r
chr === '=' ?\r
( phase = 6 ) :\r
( chr === '>' || ( empty = html.substr( i, 2 ) === '/>' ) ) &&\r
( chr === '>' ) ?\r
( ( phase = 9 ) && saveAttr( attrs, attrName, html.substring( start, i ) ) ) :\r
!escape && !uri[ attrName ] && ( empty = html.substr( i, 2 ) === '/>' ) && // attr の val が uri で / で終わりかつ、未対応属性の場合\r
- ( phase = 9 );\r
+ ( ( phase = 9 ) && saveAttr( attrs, attrName, html.substring( start, i ) ) );\r
break;\r
};\r
escape = chr === '\\' && !escape; // \\\\ is not escape for "\r