get_elements_by_attribute
function get_elements_by_attribute(attr_name,attr_value){ var r = []; (function(arr,elem){ var ch_nodes = elem.childNodes; var len = ch_nodes.length; for(var i=0;i<len;i++){ if(ch_nodes[i].nodeType != 1){continue} if(ch_nodes[i].getAttribute(attr_name) == attr_value){arr.push(ch_nodes[i])} arguments.callee(arr,ch_nodes[i]); window.status = window.status-0 + 1; } })(r,document.body); return r; }
Elementの属性をチェックして一致すれば配列に追加していく。
これを使えば、classで取得する関数も簡単。
function get_elements_by_class_name(class_name){ return get_elements_by_attribute('class',class_name); }
上記よりも、prototype.jsとか、jquery.jsとか使うほうが良い。