diff --git a/src/jqLite.js b/src/jqLite.js index 4a52cba018f8..c245bd4ce69f 100644 --- a/src/jqLite.js +++ b/src/jqLite.js @@ -790,7 +790,7 @@ forEach({ }, find: function(element, selector) { - return element.getElementsByTagName(selector); + return (element.querySelectorAll || element.getElementsByTagName).call(element, selector); }, clone: JQLiteClone, diff --git a/test/jqLiteSpec.js b/test/jqLiteSpec.js index 913e61924726..4496337b2a7c 100644 --- a/test/jqLiteSpec.js +++ b/test/jqLiteSpec.js @@ -1277,6 +1277,13 @@ describe('jqLite', function() { expect(innerDiv.length).toEqual(1); expect(innerDiv.html()).toEqual('text'); }); + + it('should find child by an advanced selector', function() { + var root = jqLite('
abc
'); + var innerDiv = root.find('div > span:nth-child(2)'); + expect(innerDiv.length).toEqual(1); + expect(innerDiv.html()).toEqual('b'); + }); });