- if(!name) { // page load/ajax update
- if (_focus)
- name = _focus; // last focus set in onfocus handlers
- else
- if (document.forms.length) { // no current focus (first page display) - set it from from last form
- var cur = document.getElementsByName('_focus')[document.forms.length-1];
- if(cur) name = cur.value;
- }
+ if(typeof(name)=='object')
+ el = name;
+ else {
+ if(!name) { // page load/ajax update
+ if (_focus)
+ name = _focus; // last focus set in onfocus handlers
+ else
+ if (document.forms.length) { // no current focus (first page display) - set it from from last form
+ var cur = document.getElementsByName('_focus')[document.forms.length-1];
+ if(cur) name = cur.value;
+ }
+ }
+ if(byId || !(el = document.getElementsByName(name)[0]))
+ el = document.getElementById(name);