Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   document.getElementById return undefined (https://javascript.ru/forum/events/48327-document-getelementbyid-return-undefined.html)

bes 30.06.2014 01:00

foo, для начала можно освоить создание запускаемых примеров
http://javascript.ru/formatting ;)

foo 30.06.2014 01:02

Цитата:

Сообщение от Sweet
глобального окружения.

Во-первых, у тебя в данном случае нет глобального окружения, есть св-во глобального объекта. С глобальным окружением будет так
var x = "foo";
new function () {
  alert(x);
  x = "Засунь своё любимое глобальное окружение себе в...";
  alert(x);
   
  var x;
};

Во вторых, судя по-всему, ты не понимаешь, что происходит в этом коде.

foo 30.06.2014 01:04

Цитата:

Сообщение от Sweet
Не доказывает, а показывает

Хорошо, каким образом показывает?

Sweet 30.06.2014 01:14

Цитата:

Сообщение от foo
у тебя в данном случае нет глобального окружения

Глобальное окружение есть всегда, потому что оно создается перед выполнением любого кода.
Цитата:

Сообщение от foo
С глобальным окружением будет так

Опять ты начинаешь умничать со своим var в глобальном окружении. Уже заезженная пластинка.
Цитата:

Сообщение от foo
Во вторых, судя по-всему, ты не понимаешь, что происходит в этом коде.

Что конкретно я не понимаю?
Цитата:

Сообщение от foo
Хорошо, каким образом показывает?

Свои наличие. Понятно, что переменную arguments можно и подменить. Но зачем?

foo 30.06.2014 01:19

Цитата:

Сообщение от Sweet
Что конкретно я не понимаю?

Да ничего. Потому что ты привел этот код вообще непонятно к чему. Еще раз: что конкретно ты хотел сказать приводя этот пример?
Цитата:

Сообщение от Sweet
Свои наличие.

Связано с подключением модулей. Это ни о чем.

Sweet 30.06.2014 01:26

Цитата:

Сообщение от foo
Да ничего. Потому что ты привел этот код вообще непонятно к чему. Еще раз: что конкретно ты хотел сказать приводя этот пример?

Тут есть ссылка в чему я всё это. И вообще, не понимаешь - перечитай весь тред.
Цитата:

Сообщение от foo
Связано с подключением модулей. Это ни о чем.

Как связано? Конкретнее?

foo 30.06.2014 01:35

Цитата:

Сообщение от Sweet
Как связано? Конкретнее?

Ну ты же сам говоришь, модуль оборачивается в функцию. Внутри функции должен быть объект arguments, поэтому его и влепили в глобальное окружение. Это хак, фактически, специально для подключения модулей.

foo 30.06.2014 01:37

Цитата:

Сообщение от Sweet
Тут есть ссылка

Там я ниже отписался, что ошибся, я просто глянул на твой код мельком, че ты кружева плетешь?

Sweet 30.06.2014 01:54

Цитата:

Сообщение от foo
Ну ты же сам говоришь, модуль оборачивается в функцию. Внутри функции должен быть объект arguments, поэтому его и влепили в глобальное окружение. Это хак, фактически, специально для подключения модулей.

Что за бред? arguments не впиливали ни в какое глобальное окружение! С чего ты это взял? Придумал?
console.log( "arguments" in global ); // false - в глобальном объекте arguments нет

Nodejs использует обычный гугловский v8. Ничего никуда не впилевается. Часть ноды написана на js. Конкретно вызов того, что ты запускаешь, находится в \lib\module.js на 456 строке (исходники можно скачать). Собственно, сам compiledWrapper можно посмотреть так:
console.log( arguments.callee.toString() );

Это выдаст:
function (exports, require, module, __filename, __dirname) {
console.log( arguments.callee.toString() );
}

Ты всё это знал? Это, между прочем, полезная инфа по ноде. И вместо того, чтобы сказать спасибо, ты строишь из себя самого умного. Не надо так!

foo 30.06.2014 02:01

Цитата:

Сообщение от Sweet
глобальное окружение

Ты опять путаешь глобальное окружение и глобальный объект. Глобальное окружение, это, грубо говоря, окружение, видимое из замыканий, на любом уровне вложенности.
Цитата:

ты строишь из себя самого умного
Я вобще нуб, ничего я не строю, но я уверен в том, что говорю. Рассматривать семантику языка с точки зрения техники подключения мордулей -- это самое глупое, что только можно придумать.

Aetae 30.06.2014 02:05

foo, хочешь сойти за умного? Почитай http://es5.javascript.ru/ и оперируй после этого фактами и ссылками на стандарт, а не бреднями.
Пока ты как попка-дурак повторяешь свою чушь тебя никто всерьёз воспринимать не будет. Не знаю уж чём прикололо Sweet тебе отвечать.

Sweet 30.06.2014 02:06

Цитата:

Сообщение от foo
я уверен в том, что говорю.

Ок. Мне этого достаточно. С баранами спорить бессмысленно.

foo 30.06.2014 02:08

Ты мудило безмозглое фильтруй базар.

foo 30.06.2014 02:09

Цитата:

Сообщение от Aetae
всерьёз

Мне же лучше. Пыль с сапог не нужно отряхивать само отпадает.

foo 30.06.2014 02:13

Цитата:

Сообщение от Aetae
Не знаю уж чём прикололо

Зато я знаю. Оно хотело понять, чуяло, что не понимает, и надеялось, но потом слилось. Оно даже не осилило окружения. Оно думает, что это глобальный объект. Ну, ты, собственно, недалеко ушел.

HardR0ck 30.06.2014 15:11

Всем спасибо,

var elem = document.getElementById('sq');
var left = (window.getComputedStyle ? getComputedStyle(elem, null) : elem.currentStyle).left;

Спасибо это помогло, везде пишут как удобно можно обратится к элементу через getElementById, но никто и слова не сказал что он не находит стилей заданных чере Css.

Откуда undefined
alert(document.getElementById('sq').style.left;)


Undefined с болшой буквы
Да я ошибся прошу простить.

Thanks again
Best regards

Thread.Close(Thx);

Sweet 30.06.2014 15:30

foo, я больше не обращаю на тебя внимания, потому что:


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