Показать сообщение отдельно
  #1 (permalink)  
Старый 04.02.2015, 10:15
Аватар для mpport
Новичок на форуме
Отправить личное сообщение для mpport Посмотреть профиль Найти все сообщения от mpport
 
Регистрация: 04.02.2015
Сообщений: 2

JavaScript - Chrome и Opera не верно видят разметку во время прокрутки после перезагр
Здравствуй спаситель о! вот сайт http://bolshoi-medved.ru Хедер-Фиксированное меню по мере передвижения scroll должно менять цвет по мере достижения элемента со значением id, что и происходит на локалке, IE и Firefox работает как надо. Но в Chrome и Opera слетает после перезагрузки страницы и цвета меняются не достигнув очередного события при прокрутке id=page. Не могу понять в чем тут дело, helppp!!!!!
такой скрипт
$(document).ready(function(){
				!function(){
			var map=[]
			 ,names=[]
			 ,win=$(window)
			 ,header=$('header')
			 ,currClass
			$('.content').each(function(n){
			 map[n]=this.offsetTop
			 names[n]=$(this).attr('id')
			})
			
                            win
			 .on('scroll',function(){
				var i=0
				while(map[i++]<=win.scrollTop());
				if(currClass!==names[i-2])
				currClass=names[i-2]
				header.removeAttr("class").addClass(names[i-2])
			 })


 			 
			}(); });


какие мысли: 1) возможно влияет движок WebKit?
2)Сбивается алгоритм сценария? но ведь хедер1 сменяет хедер2 и тд....хотя на мониторе пйдж1
3) косяк в переменных? как же тогда Firefox разобрался...
Ответить с цитированием