2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 javascript вопрос
Сообщение27.12.2009, 09:23 


31/08/09
183
Подскажите, пожалуйста...
Если сначала объявить функцию использующую какой либо элемент идущий потом, то выдаёт ошибку, если сначала объявить этот элемент а потом в самом конце функцию то всё работает, есть ли способ для первого случая?

 Профиль  
                  
 
 Re: javascript вопрос
Сообщение28.12.2009, 17:28 
Заслуженный участник


26/07/09
1559
Алматы
2mycoding
Приведите фрагмент кода, пожалуйста.

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

Другими словами, в js вместо forward declaration используется forward reference.

Например, следующий фрагмент вполне корректен:
Используется синтаксис Javascript
    function f() {return a;} // The entity "a" is undeclared yet.

    var a=0; // Actual declaration.
    print(f()); // It's Ok since "a" in the scope.
 


P.S.: В этом смысле, вроде-бы есть существенная разница между js v1.5 и v2.0, но я почти не разбираюсь в этих языках. :)

 Профиль  
                  
 
 Re: javascript вопрос
Сообщение28.12.2009, 20:17 


31/08/09
183
Код:
<script>
document.getElementById('b').onclick = function()
{
alert(1);
}
</script>

<button id=b>Кнопка</button>

 Профиль  
                  
 
 Re: javascript вопрос
Сообщение29.12.2009, 07:16 
Заслуженный участник


26/07/09
1559
Алматы
2mycoding
Можно сделать так:
Используется синтаксис HTML
<script>
    function Loader()
    {
        document.getElementById('b').onclick=function()
        {
            alert(1);
        }
    }
</script>

<body onload="Loader()">
    <button id="b">Button</button>
</body>
 


А можно так:
Используется синтаксис HTML
    <button onclick="alert(1)">Button</button>
 

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group