2012-07-05 2 views
4

Я пользуюсь кнопкой Прокрутка вверх, чтобы перейти на главную страницу. Я использую этот Jquery для егоСделать элемент видимым только при прокрутке вниз до *** px

$(window).scroll(function() { 
    if ($(this).scrollTop()) { 
     $('#cttm:hidden').stop(true, true).fadeIn(); 
    } else { 
     $('#cttm').stop(true, true).fadeOut(); 
    } 
}); 


    $(document).ready(function(){ 
     var bottom = ($(window).outerHeight() - $(window).height()) - 150; // 150 pixel to the bottom of the page; 
     $(window).scroll(function(){ 
      if ($(window).scrollTop() >= bottom) { 
        $("#cttm").fadeTo("slow",.95); 
      } else { 
        $("#cttm").fadeOut("slow"); 
      } 
     }); 

     $("#cttm").click(function(){ 
      $('html, body').animate({scrollTop:0}, 'slow'); 
      $("#cttm").fadeOut("slow"); 
     }); 
    }); 

Это Jquery работает, но я хочу, чтобы элемент появляется только тогда, когда мы прокручиваем до 200px от верхней или что-то в этом роде. Есть ли способ сделать это с помощью JQuery?

+0

код должен работать, в чем проблема? – undefined

+0

Вы можете проверить эту страницу http://template-designfbapp.blogspot.in/2012/06/test-post-with-text.html, кнопка прокрутки вверху в верхнем правом углу появляется, когда вы просто прокручиваете вниз, не на конкретная точка. –

ответ

4

Для этого не требуется высота окна.

var isVisible = false; 
$(window).scroll(function(){ 
    var shouldBeVisible = $(window).scrollTop()>200; 
    if (shouldBeVisible && !isVisible) { 
      isVisible = true; 
      $('#mybutton').show(); 
    } else if (isVisible && !shouldBeVisible) { 
      isVisible = false; 
      $('#mybutton').hide(); 
    } 
}); 

Демонстрация: http://jsfiddle.net/dystroy/gXSLE/

Смежные вопросы