Показать сообщение отдельно
  #1 (permalink)  
Старый 08.07.2011, 09:41
Новичок на форуме
Отправить личное сообщение для Afonin Посмотреть профиль Найти все сообщения от Afonin
 
Регистрация: 11.02.2011
Сообщений: 5

Почему offset().top не работает в ИЕ
Написал коротенький скриптик для плавающего окошка но почему то работает он во всем кроме ИЕ6, 7, 8. В 9-ом не проверял.

$(document).ready(function(){
var ttop = $('#trash').offset().top, tleft = $('#trash').offset().left, temp = "0";

  $(window).scroll(function () { 
    var scroll = $(document).scrollTop(), ptop = $('#gallery_info').offset().top + $('#gallery_info').height();
    if (scroll > ptop+30) {
	  // Если элемент НЕ виден
                if (scroll  +  $('#fix_description').height()+175<= $('#bottom').offset().top )
                  {
		  $("#fix_description").css({'position' : 'fixed' , 'top' : ttop - (ptop + $('#gallery_info').height())-4+'px', 'left' : tleft-2+'px'});
                  temp = 0;
                  }
    } else {
        // Если элемент виден
		$("#fix_description").css({'position' : 'static'});
   };
if ((scroll +  $('#fix_description').height()+ 105>$('#bottom').offset().top) && (temp == 0) )
  {
   $("#fix_description").css({'position':'absolute','top' : scroll-75});
   temp++;
  }
});
});


В ИЕ ругается на ошибку "offset.top есть null или не является объектом".

Может кто-то может подсказать в чем дело?
Ответить с цитированием