Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Получение позиции созданного элемента. (https://javascript.ru/forum/jquery/34159-poluchenie-pozicii-sozdannogo-ehlementa.html)

mumus 22.12.2012 14:05

Получение позиции созданного элемента.
 
Здравствуйте, я новичек в джейквери, помогите, пожалуйста. У меня есть страница, в нее загружается через аякс 5 кусков кода, берутся их хтмл файлов. В этих файлах есть дивы с идентификаторами и соответственно стилями. Всё хорошо подгружается, но мне нужно теперь получить позицию этих элементов. Но не могу получить их, пишет что андефайнед.
Позицию получаю так:
var sectionPrice = $('#price').position().top;

в подгружаемом отрывке кода есть <div id="price">blablalbal</div>

Margarita 22.12.2012 19:27

а вы проверьте что выполняется раньше - загрузка вашего кода или вычисления. Скорее всего, когда вы вычисляете позицию - то элемент еще не загрузился и, соответственно, его еще нет на странице.

mumus 22.12.2012 21:23

У меня загрузка аяксом этих элементов идет сразу же после документ.реди...

Margarita 22.12.2012 23:26

попробуйте вывести вместо определения позиции в консоль $('#price').length
если выдаст 0 или неопределенность - то значит элемента еще нет

mumus 25.12.2012 12:49

В общем получилось так, что сразу после загрузки страницы выводит 0, но если потом обновить консоль, то выводит уже 1!

ОлегА 25.12.2012 13:54

Цитата:

Сообщение от mumus
В общем получилось так, что сразу после загрузки страницы выводит 0, но если потом обновить консоль, то выводит уже 1!

правильно, потому что когда у вас страница загрузилась т.е. сработал $(document).ready у вас еще не выполнился аякс запрос и не вставил эти элементы на вашу страницу, так что вам надо брать позицию элемента, только после успешного срабатывания аякс запроса


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