Buenos días!

Tengo un problema con IE (¡qué raro!) y la función setAttribute(). Las
versiones de IE inferiores a la 6 esta incluida (no lo he podido probar
aún en la 7) no soportan esta función, teniendo que insertar los
atributos de la siguiente manera:

elemento.atributo = valorDelAtributo

La cosa es que me interesa hacer una función que dependiendo del
navegador me agregue el atributo de una u otra manera (ya se que la
opción de IE también es soportada en el FF, pero quiero intentar usar
las funciones recomendadas) pero aunque ya consigo diferenciar los
navegadores, todavía no he conseguido para IE una forma de definir los
atributos.

La intención es hacer algo parecido a esto, además permitiendo que de
una sola vez se puedan agregar varios atributos:

function setDOMAttribute(element, attr, attrValue)
{
        var i;
        attr = attr.split(":");
        attrValue = attrValue.split(":");
        for(i = 0; i < attr.length; i++)
        {
                if(Prototype.Browser.IE)
                {
                        if(attrValue[i] == "class")
                                attrValue[i] = "className";
                        //Ya se que la siguiente sentencia está mal, pero la 
intención es
hacer algo así, sin tener que usar un switch que me tenga en cuenta
todos los atributos posibles                    
                        element.attr[i] = attrValue[i];
                }
                else
                        element.setAttribute(attr, attrValue);
        }
        return element;
}

Gracias

_______________________________________________
javaEScript mailing list
javaEScript@scriptia.net
http://lists.scriptia.net/listinfo.cgi/javaescript-scriptia.net

Responder a