2015-08-26 5 views
0

Работали над липким заголовком, где я хотел закодировать свой собственный код javascript для заголовка вместо плагина, по какой-то причине моя скрипка не работает, несмотря на то, что я думаю, что это правильно.Sticky Header is not working -javascript

<script> 
var nav = document.querySelector('.sticker'); 
var top = nav.offsetTop; 

function scroll(e) { 
if (window.scrollY>=top) { 
sticker.classList.add('sticky'); 
} 
else { 
sticker.classList.remove('sticky'); 
} 
} 
document.addEventListener('scroll', scroll); 
</script> 

/*css*/ 
.sticky{ 
position: fixed; 
top: 0; 

}

jsfiddle- http://jsfiddle.net/j9rfmq4e/10/

PS - Новичок, поэтому запаситесь легко на комментарии

ответ

0

При изменении в ClassList, вы ссылались на имя класса элемента ' sticker ', а не переменная' nav ', объявленная в начале вашего скрипта, которая возвращает ошибку.

sticker.classList.add('sticky'); 

Должно быть

nav.classList.add('sticky'); 
+0

Измененный, но все тот же результат –

0

Вы ссылается на другой элемент, а не целевой элемент. Заменить код здесь:

sticker.classList.add('sticky'); 

С:

nav.classList.add('sticky'); 
+0

изменен, но все-таки тот же результат –

+2

http://jsfiddle.net/2muz9cLc/ Это дает желаемый эффект для меня. Вы снова запустили свою скрипку? – Alan

+0

@ Алан да, но он меняет ориентацию списка из строки в вертикальный список –