1
1
/*
2
2
Copyright 2014, KISSY v1.47
3
3
MIT Licensed
4
- build time: Jul 23 14:31
4
+ build time: Aug 28 13:26
5
5
*/
6
6
/*
7
7
Combined processedModules by KISSY Module Compiler:
@@ -1634,8 +1634,21 @@ KISSY.add("dom/base/style", ["./api", "ua"], function(S, require) {
1634
1634
} ) ;
1635
1635
KISSY . add ( "dom/base/selector" , [ "./api" ] , function ( S , require ) {
1636
1636
var Dom = require ( "./api" ) ;
1637
- var doc = S . Env . host . document , docElem = doc . documentElement , matches = docElem . matches || docElem . webkitMatchesSelector || docElem . mozMatchesSelector || docElem . oMatchesSelector || docElem . msMatchesSelector , supportGetElementsByClassName = "getElementsByClassName" in doc , isArray = S . isArray , makeArray = S . makeArray , isDomNodeList = Dom . isDomNodeList , SPACE = " " , push = Array . prototype . push , rClassSelector = / ^ \. ( [ \w - ] + ) $ / , rIdSelector = / ^ # ( [ \w - ] + ) $ / , rTagSelector = / ^ ( [ \w - ] ) + $ / , rTagIdSelector =
1638
- / ^ ( [ \w - ] + ) # ( [ \w - ] + ) $ / , rSimpleSelector = / ^ (?: # ( [ \w - ] + ) ) ? \s * ( [ \w - ] + | \* ) ? \. ? ( [ \w - ] + ) ? $ / , trim = S . trim ;
1637
+ var doc = S . Env . host . document , docElem = doc . documentElement , matches = docElem . matches || docElem . webkitMatchesSelector || docElem . mozMatchesSelector || docElem . oMatchesSelector || docElem . msMatchesSelector , supportGetElementsByClassName = "getElementsByClassName" in doc , getElementsByClassName = doc . getElementsByClassName , isArray = S . isArray , makeArray = S . makeArray , isDomNodeList = Dom . isDomNodeList , SPACE = " " , push = Array . prototype . push , rClassSelector = / ^ \. ( [ \w - ] + ) $ / , rIdSelector = / ^ # ( [ \w - ] + ) $ / ,
1638
+ rTagSelector = / ^ ( [ \w - ] ) + $ / , rTagIdSelector = / ^ ( [ \w - ] + ) # ( [ \w - ] + ) $ / , rSimpleSelector = / ^ (?: # ( [ \w - ] + ) ) ? \s * ( [ \w - ] + | \* ) ? \. ? ( [ \w - ] + ) ? $ / , trim = S . trim ;
1639
+ if ( ! supportGetElementsByClassName ) {
1640
+ getElementsByClassName = function ( el , match ) {
1641
+ var result = [ ] , elements = el . getElementsByTagName ( "*" ) , i , elem ;
1642
+ match = " " + match + " " ;
1643
+ for ( i = 0 ; i < elements . length ; i ++ ) {
1644
+ elem = elements [ i ] ;
1645
+ if ( ( " " + ( elem . className || elem . getAttribute ( "class" ) ) + " " ) . indexOf ( match ) > - 1 ) {
1646
+ result . push ( elem )
1647
+ }
1648
+ }
1649
+ return result
1650
+ }
1651
+ }
1639
1652
function queryEach ( f ) {
1640
1653
var self = this , l = self . length , i ;
1641
1654
for ( i = 0 ; i < l ; i ++ ) {
@@ -1671,7 +1684,7 @@ KISSY.add("dom/base/selector", ["./api"], function(S, require) {
1671
1684
}
1672
1685
function makeClassMatch ( className ) {
1673
1686
return function ( elem ) {
1674
- return elem . getElementsByClassName ( className )
1687
+ return getElementsByClassName ( elem , className )
1675
1688
}
1676
1689
}
1677
1690
function makeTagMatch ( tagName ) {
@@ -1694,8 +1707,8 @@ KISSY.add("dom/base/selector", ["./api"], function(S, require) {
1694
1707
if ( selector === "body" ) {
1695
1708
ret = [ doc . body ]
1696
1709
} else {
1697
- if ( rClassSelector . test ( selector ) && supportGetElementsByClassName ) {
1698
- ret = makeArray ( doc . getElementsByClassName ( RegExp . $1 ) )
1710
+ if ( rClassSelector . test ( selector ) ) {
1711
+ ret = makeArray ( getElementsByClassName ( doc , RegExp . $1 ) )
1699
1712
} else {
1700
1713
if ( rTagIdSelector . test ( selector ) ) {
1701
1714
el = Dom . _getElementById ( RegExp . $2 , doc ) ;
@@ -1708,7 +1721,7 @@ KISSY.add("dom/base/selector", ["./api"], function(S, require) {
1708
1721
if ( rTagSelector . test ( selector ) ) {
1709
1722
ret = makeArray ( doc . getElementsByTagName ( selector ) )
1710
1723
} else {
1711
- if ( isSimpleSelector ( selector ) && supportGetElementsByClassName ) {
1724
+ if ( isSimpleSelector ( selector ) ) {
1712
1725
var parts = selector . split ( / \s + / ) , partsLen , parents = contexts , parentIndex , parentsLen ;
1713
1726
for ( i = 0 , partsLen = parts . length ; i < partsLen ; i ++ ) {
1714
1727
parts [ i ] = makeMatch ( parts [ i ] )
0 commit comments