| 1105 | | } |
|---|
| | 1105 | }, |
|---|
| | 1106 | |
|---|
| | 1107 | getElementsByClassName: function(element, className) { |
|---|
| | 1108 | var children = ($(element) || document.body).getElementsByTagName('*'); |
|---|
| | 1109 | return $A(children).inject([], function(elements, child) { |
|---|
| | 1110 | if (child.className.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) |
|---|
| | 1111 | elements.push(Element.extend(child)); |
|---|
| | 1112 | return elements; |
|---|
| | 1113 | }); |
|---|
| | 1114 | }, |
|---|
| | 1115 | |
|---|
| | 1116 | getElementsBySelector: function() { |
|---|
| | 1117 | var args = $A(arguments), element = args.shift(); |
|---|
| | 1118 | return args.map(function(expression) { |
|---|
| | 1119 | return expression.strip().split(/\s+/).inject([null], function(results, expr) { |
|---|
| | 1120 | var selector = new Selector(expr); |
|---|
| | 1121 | return results.map(selector.findElements.bind(selector, element)).flatten(); |
|---|
| | 1122 | }); |
|---|
| | 1123 | }).flatten(); |
|---|
| | 1124 | } |
|---|