2013-06-20 5 views
0

내가하려는 div (이 경우에는 그것의는 "위로 스크롤"), 나는 다음과 같은 스크립트onScroll() 이벤트에 대한 CSS 수정을 영구히 만들 수 있습니까?

그것은 완벽하게 작동
$(document).ready(function() { 
    $(window).scroll(function() { 
     var scrollVal = $(this).scrollTop(); 
     if (scrollVal > 1500) { 
      $('#backtotop').css({'display':'block'}); 
     } else { 
      $('#backtotop').css({'display':'none'}); 
     } 
    }); 
}); 

을 사용하고있는 사용자가 내 페이지에서 스크롤 지점에 도달했을 때 표시, div가 실제로 스크롤 할 때만 나타납니다.의 CSS는 CSS 스타일 시트에 "display : none"으로 설정되어 있습니다. 그 반대의 경우에는 "display:block"보다 반대로 설정할 수 있습니다. 문제는, div는 항상 있지만 1500 값 위로 스크롤하면 페이드 아웃 ... 단지 스크롤을 중지 순간 다시 나타납니다.

그래서 기본적으로 나는 (그것을하는 것처럼) 내가 스크롤 지점에 도달 할 때 DIV 표시 할, 그러나 나는 또한 내가 스크롤을 중지 때

+0

저는 전체 질문조차 이해하지 못하기 때문에 이것을 해결하는 방법을 모르겠습니다. 그러나 나는 당신에게 다음과 같은 플러그인'http : // imakewebthings.com/jquery-waypoints/shortcuts/sticky-elements /'를 제안합니다. 이것은 원하는 것을 정확하게 수행하는 것이며 매우 간단한 방법입니다. – supersize

답변

0

당신은 같은 것을 의미한다 (그렇지있는) 있고 싶어 이? DEMO http://jsfiddle.net/yeyene/6gAHT/2/

어떤 점을 스크롤 한 후 To Top div를 표시하고 싶으면 클릭하고 위로 이동하여 숨 깁니다. ??

$(document).ready(function(){ 
    $(window).scroll(function() { 
     var scrollVal = $(this).scrollTop(); 
     if (scrollVal > 500) { 
      $('#backtotop').show(); 
     } else { 
      $('#backtotop').hide(); 
     } 
    }); 
    $('#backtotop').on('click', function(){ 
     $('html, body').animate({ scrollTop: 0 }, 'slow'); 
    }); 
}); 
+0

고마워요.하지만 그 질문은 아닙니다. 상단으로 스크롤하는 것은 이미 href = "# top"으로 처리되고 스크롤은 다른 플러그인으로 처리됩니다. 문제는 #backtotop div가 스크롤을 멈춘 후에 사라지지 않아야한다는 것입니다. –

+0

그런 다음 숨기기 스크립트 줄을 주석으로 처리하십시오. http://jsfiddle.net/yeyene/6gAHT/3/ – yeyene

+0

내 jquery 버전에 문제가있는 것으로 보입니다. 문제는 다른 플러그인을 엉망으로 만드는 것입니다. 하지만 제대로 작동하는 것 같습니다. 다시 한 번 감사드립니다. –