Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 12.01.2012, 14:43
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

да не) Понял как делать:
<div id='div'>1</div>
<div>2</div>
<script>
function $()  {
return  {
	id: function (id) {
	this.elem = document.getElementById(id);
	this.id = id;
	return this;
	},
	add: function (add) {
	this.elem.innerHTML += add
	return this;
	},
	html: function () {
	return this.elem.innerHTML
	return this;
	},
	tag: function (tag, index) {
	this.elem = document.getElementsByTagName(tag)[index]
	return this;
	},
	write: function (write) {
	this.elem.innerHTML = write
	return this;
	},
	src: function () {
	return this.elem.src
	return this;
	}
			};
		}
alert($().tag('div', 0).html())  /* работает, хотя раньше фаерьаг писал: html() - is not a fuction */
alert($().id('div').html()) // также работает
/* Дело в том, что раньше все ф-ии получали доступ к элементу через docu...ById(this.id)(и если мы брали элемент по тэгу, то ничего не работало), сейчас же весь элемент "храниться" в this.elem */
</script>
__________________
оляля, ололо
Ответить с цитированием
  #22 (permalink)  
Старый 12.01.2012, 16:35
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

если я правильно понимаю, строки выделенные цветом, выполняться не будут

<div id='div'>1</div>
<div>2</div>
<script>
function $() {
return {
id: function (id) {
this.elem = document.getElementById(id);
this.id = id;
return this;
},
add: function (add) {
this.elem.innerHTML += add
return this;
},
html: function () {
return this.elem.innerHTML
return this;
},
tag: function (tag, index) {
this.elem = document.getElementsByTagName(tag)[index]
return this;
},
write: function (write) {
this.elem.innerHTML = write
return this;
},
src: function () {
return this.elem.src
return this;
}
};
}
</script>

Также не совсем ясно, зачем оно надо и надо ли. Куда подевались точки с запятой? Вы читаете, что Вам пишут?
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук

Последний раз редактировалось nerv_, 12.01.2012 в 16:38.
Ответить с цитированием
  #23 (permalink)  
Старый 12.01.2012, 20:29
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

wtf? Что с форумом, отправил ответ уже давно, а он не дошел...
так вот, спасибо про return, просто когда смотрел топик про подобную схему:
function a() {
return {
a: function () { return this; }
b: function () {return this;}
}
}

Вот и ставил везде rerurn this А зачем точка с запятой? Ради оформления? Ладно, впредь буду ставить
__________________
оляля, ололо

Последний раз редактировалось 9xakep, 12.01.2012 в 22:17.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Растянуть элемент по содержимому AnToxa Элементы интерфейса 11 09.04.2012 22:13
select .text() с числами в Chrome возвращает null m3hc jQuery 4 26.09.2011 16:36
Переопределить функции .childElements rikitikitavi Events/DOM/Window 2 18.03.2011 21:44
Чем занимаются JS-программеры. JSTalker Оффтопик 69 02.02.2011 10:18
Удалить ряд символов перед или после курсора до определенного сивола brd Javascript под браузер 3 30.10.2009 08:20