aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-03-25 17:28:49 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-03-25 17:28:49 +0000
commit771244a58ce812198e7171e4ee0ae5b27032ead0 (patch)
tree54eb4c77f5189eb9979e504f539554ea70bf95db
parent45137795e8db0c47c0bc16712b0a24807459e252 (diff)
downloadrails-771244a58ce812198e7171e4ee0ae5b27032ead0.tar.gz
rails-771244a58ce812198e7171e4ee0ae5b27032ead0.tar.bz2
rails-771244a58ce812198e7171e4ee0ae5b27032ead0.zip
Made getElementsByClassName actually work
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@991 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rw-r--r--actionpack/lib/action_view/helpers/javascripts/prototype.js37
1 files changed, 24 insertions, 13 deletions
diff --git a/actionpack/lib/action_view/helpers/javascripts/prototype.js b/actionpack/lib/action_view/helpers/javascripts/prototype.js
index f03a817c60..5d8d69dedb 100644
--- a/actionpack/lib/action_view/helpers/javascripts/prototype.js
+++ b/actionpack/lib/action_view/helpers/javascripts/prototype.js
@@ -86,23 +86,34 @@ function $() {
}
function getElementsByClassName(className, element) {
- var children = (element || document).getElementsByTagName('*');
+ var all = document.all ? document.all : document.getElementsByTagName(element);
var elements = new Array();
-
- for (var i = 0; i < children.length; i++) {
- var child = children[i];
- var classNames = child.className.split(' ');
- for (var j = 0; j < classNames.length; j++) {
- if (classNames[j] == className) {
- elements.push(child);
- break;
- }
- }
- }
-
+
+ for (var e = 0; e < all.length; e++)
+ if (all[e].className == className)
+ elements[elements.length] = all[e];
+
return elements;
}
+// function getElementsByClassName(className, element) {
+// var children = (element || document).getElementsByTagName('*');
+// var elements = new Array();
+//
+// for (var i = 0; i < children.length; i++) {
+// var child = children[i];
+// var classNames = child.className.split(' ');
+// for (var j = 0; j < classNames.length; j++) {
+// if (classNames[j] == className) {
+// elements.push(child);
+// break;
+// }
+// }
+// }
+//
+// return elements;
+// }
+
/*--------------------------------------------------------------------------*/
Ajax = {