2015-12-03 76 views
0

這裏是我的代碼,它不顯示任何錯誤的鏈接,但不要去href位置無論是。 當我將href更改爲「www.google.com」時,代碼將起作用。爲什麼它不適用於相同的頁面鏈接?滾動頁面按鈕的onClick到同一頁

<form> 
<a href="#DivIdToScroll"> 
    <div id="btnLink" onClick="generateReport();"> Generate </div> 
</a> 
</form> 

<script> 
function generateReport() 
{ 
    window.location.href = '#DivIdToScroll'; 
} 
</script> 
+0

確保DivIdToScroll是一個ID不是一類。 –

+0

[jQuery滾動到元素]的可能重複(http://stackoverflow.com/questions/6677035/jquery-scroll-to-element) – SwiftArchitect

回答

0

我準備了您提供的代碼中的代碼片段。我只是做了一個很長的容器,並在下面插入了一個帶有「DivIdToScroll」Id的div。它似乎工作正常。你可能使用了一個類而不是Id。希望能幫助到你。

function generateReport() { 
 
    window.location.href = '#DivIdToScroll'; 
 
}
.longContainer { 
 
    height: 1000px; 
 
    background: #eee; 
 
} 
 
.justTakingSpace { 
 
    height: 600px; 
 
    margin: 2px; 
 
    background: #ddd; 
 
}
<div class="longContainer"> 
 
    <form> 
 
    <a href="#DivIdToScroll"> 
 
     <div id="btnLink" onClick="generateReport();">Generate</div> 
 
    </a> 
 
    </form> 
 

 
    <div class="justTakingSpace"></div> 
 

 
    <div id="DivIdToScroll">Oh you're here at "#DivIdToScroll". hello hello.</div> 
 
</div>

+0

謝謝你現在工作。 Div在我添加之前隱藏了window.location.href ='#DivIdToScroll';功能。這是原因。當我把它放在函數結束時,它的工作很好。 –

0

你可以試試這一套代碼,它有動畫了。

<div id="DivIdToScroll">Go to link</div> 

這裏jQuery代碼

$("#DivIdToScroll").click(function(){ 

$('html, body').animate({ 
     scrollTop: $("#scroll_div").offset().top 
    }, 1000); 
}); 

,這裏是內容的div

<div id="scroll_div">Content</div>