Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   .animate() - все просто но все такие не работает.. (https://javascript.ru/forum/misc/20691-animate-vse-prosto-no-vse-takie-ne-rabotaet.html)

uExpo 14.08.2011 01:20

.animate() - все просто но все такие не работает..
 
Есть элемент

<div class="uMenuItem">
<a href="/" class="uMenuItemA">
<span>Главная страница</span>
</a>
</div>


Есть скрипт

<script> 
$(".uMenuItem").hover(function(){
 $(this).animate({paddingLeft:'13px'}, 100);
})
</script>


Пример: http://userver.ucoz.ru/

И он не работает...

kobezzza 14.08.2011 01:26

Оберните в событие DOM Content Loaded

<script type="text/javascript"> 
$(function () {
    $(".uMenuItem").hover(function () {
        $(this).animate({paddingLeft:'13px'}, 100);
    });
});
</script>

uExpo 14.08.2011 01:29

Спасибо

kobezzza 14.08.2011 01:35

Цитата:

А что вообще дает?
Событие срабатывает после того, как загрузится скелет DOM. До этого у вас не работало, т.к. элемент .uMenuItem ещё не успел загрузится и следовательно событие не повесилось.

Цитата:

Обязательно везде прописывать? Без него не обойтись?
А зачем везде прописывать то? В одном месте прописал и всё. Ну можно и без него, например подключить скрипт после нужных для работы тегов.

Цитата:

Пишут же скрипты без этого
Скрипты бывают разные)

uExpo 14.08.2011 01:43

Цитата:

Сообщение от kobezzza (Сообщение 120407)
Ну можно и без него, например подключить скрипт после нужных для работы тегов.

Спасибо за информацию, а это как понять?

kobezzza 14.08.2011 01:52

<div id="my"></div>
<script type="text/javascript">
    document.getElementById("my"); // данный элемент уже был создан
</script>


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