Mootools oder javascript: Was bedeutet $ tmp stehen für oder was sie tut, betreffen auch

StackOverflow https://stackoverflow.com/questions/173115

  •  05-07-2019
  •  | 
  •  

Frage

Im Moment arbeite ich an der Tips.js von mootools Bibliothek und mein Code bricht auf der Linie, dass diejenigen el.$tmp hat, und Konsole sagt, dass es nicht definiert

Kann mir jemand helfen?

War es hilfreich?

Lösung

in 1,11 (nicht überprüft in 1.2+) $ tmp ein Verweis auf das Element selbst, erstellt und intern vom Garbage Collector verwendet:

var Garbage = {

    elements: [],

    collect: function(el){
        if (!el.$tmp){
            Garbage.elements.push(el);
            el.$tmp = {'opacity': 1};
        }
        return el;
    },

    trash: function(elements){
        for (var i = 0, j = elements.length, el; i < j; i++){
            if (!(el = elements[i]) || !el.$tmp) continue;
            if (el.$events) el.fireEvent('trash').removeEvents();
            for (var p in el.$tmp) el.$tmp[p] = null;
            for (var d in Element.prototype) el[d] = null;
            Garbage.elements[Garbage.elements.indexOf(el)] = null;
            el.htmlElement = el.$tmp = el = null;
        }
        Garbage.elements.remove(null);
    },

    empty: function(){
        Garbage.collect(window);
        Garbage.collect(document);
        Garbage.trash(Garbage.elements);
    }

};

die Linien el.$tmp = {'opacity': 1}; (in collect Verfahren oben) und el.htmlElement = el.$tmp = el = null; (in trash Verfahren oben) sind die einzigen Orte in der Quelle, wo diese Eigenschaft zugeordnet ist, dass ich finden konnte, obwohl es durch verschiedene andere Methoden, wie Element.setOpacity genannt und Element.getStyle (genauer gesagt, nur Lässigkeitswert zurückzukehren), sowie Methoden in der Klasse Tipps

1.2 kann dieses Problem nicht haben, aber in jedem Fall hofft, dass hilft und sorry ich nicht mehr helfen kann

Andere Tipps

Ich würde vorschlagen, Ihre Frage zu nehmen und veröffentlichen sie, zusammen mit einem Link zu der Seite entweder / oder / und:

http://mooforum.net

http://groups.google.com/group/mootools-users/topics

Das ist die Gemeinschaft, die mit ihm wimmelt.

Jetzt, da es hier zu beantworten - (? Code-Beispiel) Ich würde viel mehr Informationen benötigen

Hmmm. Ich bin mir nicht ganz sicher, was el. $ Tmp auf eine Referenz in MooTools ist aber eine Meldung, die besagt „Konsole ist nicht definiert“ ist wahrscheinlich, weil jemand mit dem Firebug anmelden versucht (oder eine andere) Konsole und das Objekt nicht existiert, wenn Sie nicht haben Firebug und Freunde.

Wenn Sie nicht http://getfirebug.com haben '> Firebug für Firefox installiert dann könnten Sie es versuchen. Sehen Sie, wenn Sie die Konsole-Anweisung finden und entfernen. Auch, wenn Sie nicht mit Firefox sind, können Sie Firebug Lite in IE, Safari oder Opera verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top