Christian S.: OOP mit JavaScript

Beitrag lesen

Hi

function Fader(){

this.opacity   = 1;
this.speed   = 0.01;
this.stopOpacity = null;
this.id    = null;
this.isFadeOut  = false;
this.errorMsg  = "Ein Fehler";

this.fadeOut = function (id, stopOpacity) {
  this.isFadeOut   = true;
  this.id    = document.getElementById(id);
  this.opacity  = 1;
  this.stopOpacity = stopOpacity;

newFadeOutOpacity   = window.setInterval("Fader.newFadeOut()", 20);
};

// newFadeOutOpacity wohl eher mit var deklarieren, damit es lokal ist, oder mach es als private Variable in Fader rein. (auch mit var).

Fader.newFadeOut = function () {
  Fader.id.style.opacity = Fader.opacity;
// [1]
// Fehler: Fader.id has no properties
// Zeile: 26

damit machst du eine statische Methode. und keine Objektmethode. mach this aus Fader.
und wenn id null ist, dann hat es eben keine properties. und dann kommt der fehler.

Gruß!