2014-01-06 4 views
0

я хочу, чтобы получить верхнюю часть моего footer.but я получаю эту ошибку: Не удается прочитать свойство «сверху» нулевыхошибка: Не удается прочитать свойство «сверху» нулевых

вот мой HTML

<footer class="footer" role="complementary" id="myfooter"> 

</footer> 

и в JQuery

var topoffooter=$('#myfooter').offset().top; 

может кто-нибудь помочь по этому

+0

Где у вас этот скрипт помещается? –

+0

$ ('# myfooter'). Offset() будет null в вашем случае, проверьте, не является ли он нулевым, а затем получите свойство top. –

+0

Код работает отлично, см. [JSFiddle] (http://jsfiddle.net/MCj2S/) –

ответ

3

пробл EM

Возможно, проблема связана с тем, что ваш сценарий не может найти элемент DOM. элемент должен быть там в DOM, прежде чем она используется JavaScript


DEBUGGING

Вместо этой линии var topoffooter=$('#myfooter').offset().top; просто пытаются предупредить длину объекта JQuery

alert($('#myfooter').length); 

Он должен быть больше нуля, чтобы работать, и если нет, мы находимся на правильном пути для решения проблемы.


РЕШЕНИЕ

1) Вы можете поместить скрипты непосредственно перед закрытием тега тела - </body> - Preferred

2) Или выполнить ваши скрипты документа (DOM) готовое событие с использованием jQuery's
$(document).ready()http://api.jquery.com/ready/

Смежные вопросы