2015-10-06 104 views
1

我有一些jQuery代碼滾動到單擊事件的元素的父母的頂部。這段代碼很好用,但是,在IE和Firefox上測試時,滾動不起作用。有誰知道這個功能的解決方案與IE和Firefox一起工作嗎?jQuery的動畫scrolltop不工作在火狐或IE

$(".character-img").click(function(){ 
 
    \t $('body').animate({scrollTop: $(this).parent().offset().top}); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div> 
 

 
<div class="character"> 
 
    <img class="character-img" src="https://unsplash.it/200/300" /> 
 
    <div class="content"> 
 
     
 
    </div> 
 
</div>

回答

2

這是一個衆所周知的問題,Firefox將只接受scrollTop的當兩個bodyhtml聲明。

$('html,body').animate({scrollTop: $(this).parent().offset().top}); 

是寫這個的正確方法。

請參閱Animate scrollTop not working in firefox

+0

謝謝!這解決了我在Firefox中的問題,但不是IE。任何想法如何解決IE瀏覽器? – EricBellDesigns