2013-03-10 88 views
1

我创建了使用动画倒在点击面板:添加滚动高达动画面板

<script> 
function toggleSlider() { 
    if ($("#panelThatSlides").is(":visible")) { 
     $("#contentThatFades").animate(
      { 
       opacity: "0" 
      }, 
      600, 
      function(){ 
       $("#panelThatSlides").slideUp(); 
      } 
     ); 
    } 
    else { 
     $("#panelThatSlides").slideDown(600, function(){ 
      $("#contentThatFades").animate(
       { 

       opacity: "1", 
       }, 
       600 
      ); 
     }); 
    } 
} 
</script> 

这个伟大的工程,但是当它以动画下来一些屏幕尺寸,你看不到的内容(它低于浏览器底部边缘)。我需要做的是让页面同时滚动 - 任何想法? YHX

+0

也发布你的'HTML'。 – Imtiaz 2013-03-10 20:20:46

+0

而且你也不需要这么长的代码。只需使用jquery'slideToggle'函数。 – Imtiaz 2013-03-10 20:35:39

回答

1

您所需要的基本功能是:

$('html,body').animate({ 
    scrollTop: $('#panelThatSlides').offset().top 
}, 600); 

UPDATE:

只是一个ID [id="sliderbtn"]添加到您的锚和删除onclick事件。

<a href="#" onclick="toggleSlider();"><img alt="" src="/images/css/blind.jpg" /></a> 

更新与此javascript:

$(document).ready(function() { 
$("#sliderbtn").click(function() { 
if ($("#panelThatSlides").is(":visible")) { 
    $("#contentThatFades").animate(
     { 
      opacity: "0" 
     }, 
     600, 
     function(){ 
      $("#panelThatSlides").slideUp(); 
     } 
    ); 
} 
else { 
    $("#panelThatSlides").slideDown(600, function(){ 
     $("#contentThatFades").animate(
      { 
       opacity: "1" 
      }, 
      600 
     ); 
     $('html,body').animate({ 
     scrollTop: $('#panelThatSlides').offset().top 
     }, 600); 
    }); 
} 
}); 
}); 

见,如果这是你想要的。 :)

+1

谢谢你的建议,我似乎无法得到那个工作?动画和淡入是我们想要的面板 - 我只需要添加向下滚动功能,您可以在这里看到:www.employeefinder.co.uk – user2154636 2013-03-10 21:57:40

+0

答案已更新。看看它是否满足你。 :) – Imtiaz 2013-03-11 08:43:19

+0

Bhorer_Alo谢谢你的帮助我已经做出了我认为你改变了的改变,但它似乎没有奏效。我很抱歉:)我做错了什么? – user2154636 2013-03-11 22:18:50