Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]JS Easings navbar
Dukov
post 27.05.2017, 14:03:18
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 21.03.2017

Ostrzeżenie: (0%)
-----


Hej chciałem sobie zrobić efekt easings na navbarze mam tylko problem, bo nie działa to do końca
http://dukov.pl/testphp/ < strona funkcja się wywołuje oczywiście window.onscroll czasami zmienia swoje opacity i się zwija / rozwija, czasem nie.

  1. function scrollFunc(e) {
  2. var nav = document.getElementById('header');
  3. var how = (function(){
  4. var x = document.getElementById('header');
  5. if (x.currentStyle)
  6. var y = x.currentStyle['height'];
  7. else if (window.getComputedStyle)
  8. var y = document.defaultView.getComputedStyle(x,null).getPropertyValue('height');
  9. return y;
  10.  
  11. }());
  12. console.log(how);
  13. var hvalue = parseFloat(how);
  14. console.log('Noooo: '+hvalue);
  15. console.log('offset to: ' + window.pageYOffset);
  16. if (hvalue >100 && window.pageYOffset > 150) {
  17.  
  18. $("nav").animate({
  19.      
  20.         opacity: '0.5',
  21.         height: '70px'
  22.       
  23.     });
  24. }
  25.  
  26. else if (hvalue < 100 && window.pageYOffset < 250) {
  27. $("nav").animate({
  28.      
  29.         opacity: '1',
  30. height: '150px'
  31.       
  32.       
  33.     });
  34. }
  35. }
  36.  
  37. window.onscroll = scrollFunc;


Tu jest kod odpowiadający za ten efekt. jak widzicie navbar powinien się zwijać gdy przesuwam stronę, offset jest w górnych okolicach, a element nav ma wysokość większą niż 100px, rozwijać się to odwrotnie. Zmienne z warunków są pokazywane w konsoli, więc wiem, że warunki są spełnione, a funkcja wywołana, szkoda, że raz działa, raz nie działa.

EDIT
Zauważyłem, że kod działa, tylko wykonuje się gdy warunek jest spełniony, po kolejnym przesunięcią rolką i po opóźnieniu ok 1 sekundy, a to jest niedopuszczalne.

Ten post edytował Dukov 27.05.2017, 14:13:29
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.07.2025 - 16:09