Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вопросы по объектам (https://javascript.ru/forum/misc/24091-voprosy-po-obektam.html)

(Sandr) 17.12.2011 18:24

Вопросы по объектам
 
Подскажите решение нескольких вопросов, пожалуйста?

1. Пробую создать вложенный объект, но не получается. Вот код:
var $ = {
 one: function() {
 },
 one.two: function(q) {
  alert(q);
 }
}

Вызов должен быть таким $.one.two('text');



2. Пытаюсь понять, как сделать вызов метода подобно jQuery. К примеру так:
$.element('ид или класс элемента').click(function() {
 // исполняемый код
});


Свойство element получает ссылку на элемент, после клика по элементу запускается исполняемый код. Подскажите, как подобное осуществить?


3. Как узнать ид главного родителя элемента с id elem?
Есть хтмл код:
<div id="parent">
<span id="son">
<div id="elem"></div>
</span>
</div>
Т.е. должно вывести "parent"

FINoM 17.12.2011 18:58

1.
Как бы сказали некоторые товарищи: "ну вы совсем не знаете Javascript".

var $ = {
  one: function() {
  }
}

$.one.two = function(q) {
  alert(q);
}

FINoM 17.12.2011 19:02

2.
Возможно, вам помогут сообщения из этой темы: http://javascript.ru/forum/offtopic/...html#post97743

(Sandr) 17.12.2011 19:10

FINoM,
"Как бы сказали некоторые товарищи: "ну вы совсем не знаете Javascript".", вот как раз как так сделать, я знаю :) Я просто хотел попробовать всё в одни скобки собрать, что что-то в роде этого было
var $ = { 
 //все свойства
}

рони 17.12.2011 19:25

(Sandr),
3.
<body>
<div id="parent">
<span id="son">
<div id="elem"></div>
</span>
</div>
<script type="text/javascript">
var elem =  document.getElementById('elem');
var parent = elem.parentNode;
var id;
while (parent&&parent.tagName != "BODY") {
   id =  parent.id
   parent = parent.parentNode
 }
alert(id)
</script></body>

(Sandr) 17.12.2011 19:39

рони,
спасибо за код.

(Sandr) 18.12.2011 19:34

Цитата:

Сообщение от FINoM (Сообщение 143902)
2.
Возможно, вам помогут сообщения из этой темы: http://javascript.ru/forum/offtopic/...html#post97743

Эта тема и помогла и запутала ещё сильнее))

К примеру этот код:
function $(a) {
	var r = {};
	for (var i = 0; i < a.length бла-бла-бла
		... r[a[i]] = tratata(a, i);
	r.method = function () {...};
	return r;
}
$([]).method();

Я и понимаю, и в тоже самое время не понимаю, как он работает..
Не пойму, как у функции может быть метод.. Не пойму, почему в функции возвращается сам объект, а не его метод..
ААааА.. я запутался:blink: :help:

melky 18.12.2011 20:03

Цитата:

Сообщение от (Sandr) (Сообщение 144171)
Я и понимаю, и в тоже самое время не понимаю, как он работает..
Не пойму, как у функции может быть метод.. Не пойму, почему в функции возвращается сам объект, а не его метод..
ААааА.. я запутался:blink: :help:

вы ну совсем не знаете JavaScript

Цитата:

Сообщение от (Sandr) (Сообщение 144171)
Не пойму, почему в функции возвращается сам объект, а не его метод..

function $(a) {
	var r = {};
        .........
	return r;
}
$();

??

(Sandr) 18.12.2011 23:19

melky,
в роде бы ясно. Спасибо)
/*блин.. чем больше учу js, тем больше понимаю, что я в нём мало что понимаю((*/

trikadin 19.12.2011 00:00

Цитата:

Сообщение от (Sandr)
/*блин.. чем больше учу js, тем больше понимаю, что я в нём мало что понимаю((*/

Да вы Сократ)


Часовой пояс GMT +3, время: 16:02.