Autor Zpráva
Ariel
Profil *
Zdravím,

Udělal jsem si funkci na změnu barvy (function color(barva), která je vně další funkce function id(id).
Ale bohužel nefunguje, můžete mi prosím pomoc?
Děkuji za veškerou pomoc.

HTML kód

<p id="text"> Hello World! </p>

funkce


      function id(id){
                
    this.color = function (barva){    
                
        return style.color = barva;
         }
    
    return document.getElementById(id);
                
    }
    
    a takhle funkcí volám
    id("text").color('red');
Someone
Profil
Je nějaký důvod proč to děláš vnořenou funkcí? Nepostačila by jednoduchá funkce o dvou parametrech?
function zmena(id,color) {
   document.getElementById(id).style.color = color;
}
Ariel
Profil *
Určitě ano, ale mám v plánu funkci rozšířit např o class, proto to dělám přes vnořenou funkci.


Vlastně, špatně jsem se vyjádřil.
Respektivě chtěl bych, aby se ten kód volal takhle:
id("text").color('red');
Johnik
Profil
function Style(id)
{
    this.target = document.getElementById( id );
    
    this.color = function(value)
    {
        this.target.style.color = value;
        
        return this;
    }
    
    this.backgroundColor = function(value)
    {
        this.target.style.backgroundColor = value;
        
        return this;
    }
    
}

new Style("po").color("red").backgroundColor("green");
Ariel
Profil *
Johnik
Děkuju moc, vyřešeno.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: