Не выполняется код на jQuery

Статус
Закрыто для дальнейших ответов.

vaspiring

Новичок
Регистрация
10.10.2011
Сообщения
4
Здравствуйте! Есть такой кусок кода на jQ
HTML:
Здравствуйте! Есть такой кусок кода на jQ
<html>
<head>
...
</head>
<body>
<script type = "text/javascript">
$('#error').css('display','none');
alert('arbaiten');
</script>
<div id = "error">text</div>
</body>
</html>
Alert - работает, а добавление свойства display - нет. Вопрос почему?
Alert - работает, а добавление свойства display - нет. Вопрос почему?
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 138
Лучше сделать так
Код:
$('#error').hide();
 

tigra60

Спасатель
Регистрация
10.12.2009
Сообщения
1 990
Лучше сделать так
$('#error').hide();
Что в лоб, что по лбу!

Лучше - включить мозг!

Ну, подумайте сами, как скрипт найдет в дереве DOM объект с id="error", если он еще не объявлен?

Поместите скрипт в конце страницы, перед закрывающим </body>, и будет вам счастье!

Кстати, такое размещение скриптов (в конце страницы) - рекомендация HTML5.
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
Кстати, такое размещение скриптов (в конце страницы) - рекомендация HTML5.
они уже положили болт на классическую валидацию=)?
 

tigra60

Спасатель
Регистрация
10.12.2009
Сообщения
1 990
А при чем здесь валидация? Элемент <script> можно размещать где угодно. Но есть еще и семантика.
Непонятно, с какого перепугу, принято размещать скрипты в <head>. Это то и породило многочисленные скрипты где попало в коде. А это приводит к задержкам в работе браузера, так как он перестает строить DOM и начинает выполнять скрипт.
А вот размещение скриптов в конце кода дает очевидный профит хотя бы тем, что дерево DOM уже построено и все элементы доступны.
 

lekzd

parse error: parse error, unexpected T_STRING...
Регистрация
17.02.2011
Сообщения
1 125
Непонятно, с какого перепугу, принято размещать скрипты в <head>
в далекие далекие времена, когда браузеры были маленькими и несмышленными, существовала проблема, что скрипт выпечатывался как текст страницы, если браузер не воспроизводил JS или он там был отключен, потому скрипты прятали в HEAD и сейчас у большинства веб-разработчиков генетическая память и на ошибки JS, которые в win 98 выскакивали табличкой на экран, блокируя страницу и на тупые браузеры без JS
 
Статус
Закрыто для дальнейших ответов.
Верх Низ