Вот код:Возвращение ссылки на JavaScript
Я пытаюсь получить collection.prototype.add
вернуть ссылку так, чтобы конечный сигнал тревоги будет отображаться testing, testing, 123, testing
. Есть ли способ сделать то, что я пытаюсь сделать здесь?
HTML:
<span id="spantest">testing, testing, 123, testing</span>
JavaScript:
var collection = function() {
this.items = {};
}
collection.prototype.add = function(sElmtId) {
this.items[sElmtId] = {};
return this.items[sElmtId];
}
collection.prototype.bind = function() {
for (var sElmtId in this.items) {
this.items[sElmtId] = document.getElementById(sElmtId);
}
}
var col = new collection();
var obj = {};
obj = col.add('spantest');
col.bind();
alert(obj.innerHTML);
Я хочу, чтобы obj была ссылкой на this.items [sElmtId], поэтому, когда this.items [sElmtId] обновляется позже с помощью .bind(), obj затем укажет на тот же элемент DOM, что this.items [sElmtId ] делает. –
А теперь я получил это ... –
Причина необходимости этого кода немного сложна. В более крупной версии моего кода у меня есть объекты, которые создают экземпляры элементов DOM. Я хочу, чтобы эти объекты имели свойство (например, this.dom_elmt), которое указывает на элемент DOM, который они отвечали за рендеринг. Причина, по которой я пытаюсь создать ссылку DOM после факта, заключается в том, что я пишу для совместимости с IE6. Построение фрагментов DOM в памяти слишком медленное для больших страниц в IE6. Я должен создать HTML по строке, вставить в DOM после выхода функции и создать ссылку обратно на элемент DOM. –