
07.12.2014, 12:43
|
 |
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
|
У тебя Instance - функция, так? То есть подпрограмма.
Где в коде у тебя переход к исполнению подпрограммы?
__________________
В личку только с интересными предложениями
|
|

07.12.2014, 12:45
|
|
Аспирант
|
|
Регистрация: 29.05.2013
Сообщений: 61
|
|
var Instance = function() {
if (this._instance) return this._instance;
return this._instance = new this;
};
Это функция, такая штуковина, котрая выполняет участок кода.
var Apple = function(){
this.color = "green";
};
Это тоже функция, которая выполняет код, а не содержит цвет.
Apple = {
this.color: 'green'
}
Вот так и будет работать, только function убрать
|
|

07.12.2014, 12:45
|
 |
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
|
Сообщение от borodatych
|
Apple.Instance.color
Должно же отдать green, а не undefined ??!
|
Ты походу еще и наркоман. Каким боком, у объекта, возьмется свойство, объявляемое вообще в другой функции? И причем объявляемое только при вызове этой функции и определяемое на контексте вызвова (this)?
__________________
В личку только с интересными предложениями
|
|

07.12.2014, 12:58
|
|
Аспирант
|
|
Регистрация: 03.02.2014
Сообщений: 40
|
|
|
Сообщение от danik.js
|
|
Где у тебя вызов функции Instance?
|
Премного благодарен, вот она моя рассеяность...
Apple.Instance().color
|
Сообщение от danik.js
|
|
Иди читай что такое функция.
|
Грубовато, как со школьником, но все равно признателен.
|
|

07.12.2014, 13:06
|
|
Аспирант
|
|
Регистрация: 03.02.2014
Сообщений: 40
|
|
Про вторую то страницу и не заметил...
|
Сообщение от danik.js
|
|
Ты походу еще и наркоман.
|
Не угадали.
|
Сообщение от Romaboy
|
|
Вот так и будет работать, только function убрать
|
И вам спасибо за ответ.
Ваш вариант тоже имеет место быть, но мне было интересно почему мой не работал, мне он как то ближе
|
|

07.12.2014, 13:51
|
 |
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
|
Сообщение от borodatych
|
|
Сообщение от danik.js
|
|
Ты походу еще и наркоман.
|
Не угадали.
|
Посыпаю голову пеплом
|
Сообщение от borodatych
|
|
вот она моя рассеяность
|
Теперь все прояснилось? Остался только вопрос - нахрена вся эта шняга? Чего пытаешься добиться этим извратом?
__________________
В личку только с интересными предложениями
|
|

07.12.2014, 15:22
|
|
Аспирант
|
|
Регистрация: 03.02.2014
Сообщений: 40
|
|
Добиваюсь подобия ООП.
В итоге:
var Offline = function(){
this.version = false;
this.url = false;
this.getUrl = function(url){
switch( this.version ){
case "02":
this.url = url;
break;
//default: this.url = url;
}
return this.url;
};
this.getLink = function( url, ankor ){
var dom,href = this.getUrl(url);
if( href ){
dom = "<a href='"+ href +"'>"+ ankor +"</a>";
}
else{
dom = "<span>"+ ankor +"</span>";
}
return dom;
};
};
Offline.Instance = Instance;
Offline.Instance().version = GetParameter("version");
Instance и GetParameter реализованы в базовом файле.
В процессе:
var offline = '<?=$offline?>';
...
if( offline ){
var url = offline+"&number="+num+"&detail="+detail;
detAnalog += "<div id='"+ num +"'>"+ Offline.Instance().getLink( url, num ) +"</div>";
}else ...
Последний раз редактировалось borodatych, 08.12.2014 в 16:03.
|
|

07.12.2014, 21:12
|
 |
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
То есть получается что тебе и не нужно чтобы Offline был функцией, так?
var Offline = {
version: GetParameter("version"),
getUrl: function(url){
switch( this.version ){
case "02":
this.url = url;
break;
default: this.url = url;
}
return this.url;
},
getLink: function( url, ankor ){
var dom,href = this.getUrl(url);
if( href ){
dom = "<a href='"+ href +"'>"+ ankor +"</a>";
}
else{
dom = "<span>"+ ankor +"</span>";
}
return dom;
}
};
Offline.getLink();
Возможно название объекта лучше написать с маленькой буквы. Хотя допустим встроенный объект Math пишут же с большой.
Непонятно только че делает getUrl. Полагаю что какую-то ненужную хуйню и его нужно выпилить.
Не ankor а anchor. Имена функций надо с маленькой буквы писать.
__________________
В личку только с интересными предложениями
|
|

08.12.2014, 16:25
|
|
Аспирант
|
|
Регистрация: 03.02.2014
Сообщений: 40
|
|
|
Цитата:
|
|
Не ankor а anchor
|
Благодарю за внимательность, с русским плохо.
|
Цитата:
|
|
Непонятно только че делает getUrl. Полагаю что какую-то ненужную хуйню и его нужно выпилить.
|
Тут я забыл закоментировать/удалить, поправил.
|
Цитата:
|
|
Имена функций надо с маленькой буквы писать.
|
Прислушался..
|
Цитата:
|
|
То есть получается что тебе и не нужно чтобы Offline был функцией, так?
|
Я тоже пришел к такому варианту, так как IE ругался на:
Offline.Instance = Instance;
danik.js, Вы мне достаточно помогли, вопрос можно закрыть.
Всем спасибо за уделенное внимание.
|
|

08.12.2014, 16:42
|
|
Аспирант
|
|
Регистрация: 03.02.2014
Сообщений: 40
|
|
Хотя если кто объяснит существенную разницу между
var Offline = function(){
this.version = false;
this.url = false;
this.getUrl = function(url){
switch( this.version ){
case "02":
this.url = url;
break;
//default: this.url = url;
}
return this.url;
};
this.getLink = function( url, anchor ){
var dom,href = this.getUrl(url);
if( href ){
dom = "<a href='"+ href +"'>"+ anchor +"</a>";
}
else{
dom = "<span>"+ anchor +"</span>";
}
return dom;
};
};
И
var Offline = {
version : false,
url : false,
getUrl : function(url){
switch( this.version ){
case "02":
this.url = url;
break;
//default: this.url = url;
}
return this.url;
},
getLink : function( url, anchor ){
var dom,href = this.getUrl(url);
if( href ){
dom = "<a href='"+ href +"'>"+ anchor +"</a>";
}
else{
dom = "<span>"+ anchor +"</span>";
}
return dom;
}
};
Буду признателен... Для меня они идентичны.
|
|
|
|