jobo: OO bgColorChanger - mit Closure (verschachtelte Objekte)

Beitrag lesen

Hallo,

  
var BgChanger = {  
    start : function (elemId, rgbVals, rgbRanges, interval) {  
        var ColorHandler = {  
            red : {},  
            green : {},  
            blue : {},  
            style : {},  
            createColorObj : function (value, range) {  
                return {  
                    "value": value,  
                    "max" : value,  
                    "range" : range,  
                    "dir" : 1  
                };  
            },  
            nextVal : function (colorName) {  
                var c = this[colorName],  
                    val = c.value,  
                    max = c.max,  
                    range = c.range;  
                if (val <= max - range || val >= max) {  
                    c.dir *= -1;  
                }  
                c.value += c.dir;  
                return c.value;  
            },  
            change : function () {  
                this.style.backgroundColor = "RGB(" + this.nextVal("red") + "," + this.nextVal("green") + "," + this.nextVal("blue") + ")";  
            },  
            init : function (elemId, rgbVals, rgbRanges) {  
                this.style = document.getElementById(elemId).style;  
                this.red = this.createColorObj(rgbVals[0], rgbRanges[0]);  
                this.green = this.createColorObj(rgbVals[1], rgbRanges[1]);  
                this.blue = this.createColorObj(rgbVals[2], rgbRanges[2]);  
            }  
        };  
        ColorHandler.init(elemId, rgbVals, rgbRanges);  
        window.setInterval(function () {ColorHandler.change(); }, interval);  
    }  
};  
window.onload = function () {  
    BgChanger.start("bgchange", [255, 168, 136], [55, 10, 16], 120);  
};  

Gruß

jobo

0 59

OO Backgroundcolorchanger - optimieren /Kontext von this

jobo
  • javascript
  1. 0
    unknown
    1. 0

      OO - optimieren /Kontext von this - was macht der Browser da?

      jobo
      1. 0
        unknown
        1. 0
          jobo
          1. 0
            unknown
            1. 0
              jobo
              1. 0
                unknown
                1. 0
                  jobo
                  1. 0
                    unknown
  2. 0
    ChrisB
    1. 0
      jobo
      1. 0
        ChrisB
        1. 0
          jobo
          1. 0
            molily
            1. 0
              jobo
      2. 0
        molily
        1. 0
          jobo
          1. 0
            molily
            1. 0

              OO bgColorChanger - next try: alles in einem Objekt

              jobo
              1. 0

                OO bgColorChanger - next try: alles in einem Objekt - kl. opt.

                jobo
                1. 0
                  unknown
                  1. 0
                    jobo
                    1. 0
                      jobo
                      1. 0

                        colorChanger - rein funktional - Feinschliff

                        jobo
                        1. 0
                          jobo
                          1. 0

                            colorChanger - Feinschliff en Detail, macht das Sinn?

                            jobo
                            1. 0
                              molily
                              1. 0
                                jobo
                                1. 0
                                  molily
                          2. 0
                            molily
                            1. 0
                              jobo
                              1. 0
                                unknown
                                1. 0
                                  jobo
                                  1. 0
                                    unknown
                                2. 0
                                  molily
                                  1. 0
                                    unknown
                  2. 2
                    molily
                    1. 0
                      unknown
                      1. 0
                        molily
                        1. 0
                          molily
                          1. 0
                            unknown
                            1. 0
                              jobo
                            2. 0
                              jobo
                            3. 0

                              OO bgColorChanger - mit Closure (verschachtelte Objekte)

                              jobo
                            4. 0
                              molily
                              1. 0

                                OO bgColorChanger - elegant oder zumindest vernünftig!

                                jobo
                    2. 0
                      jobo
                    3. 0

                      bgColorChanger - OO vs. funktional

                      jobo
                      1. 1
                        molily
                        1. 0
                          jobo
  3. 0

    OO - Zugriff auf Objektmethode mittels Namen als Stringparameter

    jobo
    1. 0
      unknown
      1. 0
        jobo
        1. 0
          ChrisB
          1. 0
            jobo
        2. 0
          unknown
    2. 0
      molily
      1. 0
        jobo