Всем привет)
Вот код спойлера:
function j(data) {
return new operation(data);
}
function operation(data) {
this.obj = document.getElementById(data);
return this;
}
operation.prototype.spoiler = function(data) {
var cObj = this.obj;
var sObj = j(data['change']).obj;
cObj.onclick = function() {
sObj.style.display == 'none' ? sObj.style.display = 'block' : sObj.style.display = 'none';
}
};
j('click').spoiler({change: 'change'});
Всё в роде бы норм. Но вот когда хочу сделать так, что бы код: j('element') возвращал объект элемента, вылетают ошибки.
Ниже изменённый код, в котором происходят ошибки:
function j(data) {
return new operation(data);
}
function operation(data) {
this.obj = document.getElementById(data);
return this.obj;
}
operation.prototype.spoiler = function(data) {
var cObj = this.obj;
var sObj = j(data['change']);
cObj.onclick = function() {
sObj.style.display == 'none' ? sObj.style.display = 'block' : sObj.style.display = 'none';
}
};
j('click').spoiler({change: 'change'});
Текст ошибки в хроме: "Uncaught TypeError: Object #<HTMLSpanElement> has no method 'spoiler' ".
Подскажите, в чём тут проблема?