Falew Pessoal! Vou começar com uma funçãozinha parecida com o dollar da Prototype só que com um objetivo um pouco diferente. Como todos devem saber a função do Prototype nada mais é do que um atalho às milhões de chamadas ao metodo getElementById dos elementos.
Já a função que fiz, há um tempo atrás, tem como alguns dos objetivos ter um atalho ao getElementById, ao getElementsByTagName e a função que alguns usam getElementsByClassName. Outra função dela é devolver um Objeto Dom (dããã!) independente do argumento fornecido, ou seja, se você fornecer um objeto e pensar que esta fornecendo o id(string) dele a função vai te devolver ele! Eu uso muito ela, que além de diminuir o trabalho de escrever mais, ainda “conserta” meus erros. Mas atenção não se pode fornecer vários argumentos para serem devolvidos como um array, para isso use a função do Prototype.
Parâmetros:
- String ou objeto: A tag, id ou classe, depende do que você declarar no 2º.
- String: “tag” “id” ou “class” – opcional
- Objeto: Aonde vai procurar? – opcional
Você pode usar e abusar mas dê os devidos créditos!
Alguns usos da função:
tituloDoRodape = objDom(”h1″, “tag”, document.getElementById(’rodape’))[0]; //Ou melhor abaixo
outroTituloDoRodape = objDom(”h1″, “tag”, objDom(’rodape’))[1];
ativado = objDom(”activated”, “class”)[1];
cabecalhoTexto = objDom(”header”).innerHTML;
Você vai entender vendo ela:
function objDom (oDom, oType, doc)
{var doc, oObj;
if(!doc) {doc = document;}
oType = (!oType) ? ”id” : oType;
if(typeof(oDom) == ’objetc’ && doc.all){oObj=doc.all[oDom];}
for (var i=0; !oObj && doc.forms && i< doc.forms.length; i++)
{oObj=doc.forms[i][oDom];}
if(!oObj && typeof(oDom) == ’string’)
{if(oType == ’id’)
{oObj=doc.getElementById(oDom);}
else if (oType == ’tag’)
{oObj=doc.getElementsByTagName(oDom);}
else if (oType == ’class’)
{oObj=getElementsByClassName(oDom, doc);}}
if(!oObj)
{oObj=((oDom.tagName)?oDom:false);}
return oObj;}
Eu acho que ela ainda está com alguns bugs, portanto me ajudem a identificá-los e concertá-los. Flwss ![]()

Janeiro, 5 - 2007 às 9:32 pm |
[...] A Função "objDom" como já postado aqui, recebe o 1º parâmetro inicialmente com ID, se o 2º [...]