简体   繁体   中英

javascript function not working when a new if statement added

i have a function to stick the nav sidebar to the top after some scrolling.but when my screen minimizes the logo on the top shortens and the position of the nav changes.so i wrote another 'if' function inside the first one to solve the problem.now the position is correct but the nav side bar is fixing on the top while scrolling.can you please help me....the function is as below....

$(function() {
       var stickyHeaderTop = $('#myScrollspy').offset().top;
       var yy = document.getElementById("cor").clientHeight;
       $(window).scroll(function() {
           if ($(window).scrollTop() > stickyHeaderTop) {

               $('#myScrollspy').css({
                   position: 'fixed',
                   top: '8px',
                   left: '0px'
               });

               $('#my').css({
                   position: 'absolute',
                   right: '0px'
               });

           } else {
               setInterval(function() {
                   if (yy < '490') {

                       var yu = '500' - yy;

                       $('#myScrollspy').css({
                           position: 'absolute',
                           top: ''
                           700 '-yy',
                           left: '0px'
                       });
                       $('#my').css({
                           position: 'absolute',
                           right: '0px'
                       });
                   }
               }, 30);
           }
       });
   });

You have some syntax issues, have mentioned them in the comments below.

              if (yy < 490) { //syntax issue here
                       var yu = 500 - yy; //syntax issue here

                       $('#myScrollspy').css({
                           position: 'absolute',
                           top: (700 - yy)+'px', //syntax issue here
                           left: '0px'
                       });
                       $('#my').css({
                           position: 'absolute',
                           right: '0px'
                       });
                   }

document.getElementById("cor").clientHeight will return an int(number).

Check element.clientHeight

Note: This property will round the value to an integer. If you need a fractional value, use element.getBoundingClientRect() .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM