Zeroglif, Все так, как и должно быть, вот только это, выходит, работает не совсем так, как надо:
var $ = function(elem/* id */) {
return typeof elem == 'string' ? $d.getElementById(elem) : elem;
};
Видимо, нужно использовать что-то вроде
(elem!=null) && elem.constructor==String