2012-10-03 54 views
1

我在單個頁面網站上使用jquery切換插件和smoothscroll插件。現在,問題在於切換功能中的隱藏文本不允許smoothscroll jquery正常工作。假設我們在導航選項中點擊「項目a」,它應該以平滑的方式滾動到「項目a」區域div,它是隨意的,並且還考慮了切換功能中隱藏文本的高度,它是大約100px。因此,既沒有平滑的滾動,也沒有100px的期望結果的差異。jquery切換和平滑滾動在同一頁上衝突

僅供參考,我使用html5,並在頁面上有4個部分,如下面的代碼所示。

下面是切換功能代碼:

`$(document).ready(function(){ 
//Hide the tooglebox when page load 
$(".togglebox").hide(); 
//slide up and down when click over heading 2 
$("h2").click(function(){ 
// slide toggle effect set to slow you can set it to fast too. 
$(this).toggleClass("active").next(".togglebox").slideToggle("slow"); 
return true; 
}); 
});` 

這裏是導航菜單的代碼(應該滾動在同一頁上):

<nav> 
     <ul> 
       <li><a href="#main">Home</a></li>
<li><a href="#work">Our Works</a></li> <li><a href="#about-us">About Us</a></li> <li><a href="#contact">Contact Us</a></li> </ul> </nav>

我使用smoothscroll插件位於:http://css-tricks.com/snippets/jquery/smooth-scrolling/

有人可以請指導我爲什麼這些2 jquery發生衝突。

PS:我也在使用jQuery幻燈片,但據我所知,沒有任何效果,因爲我刪除了那個,沒有任何改變。

回答

0

根據您發佈的內容很難判斷,但使用.hide()方法(將CSS屬性設置爲display: none)可能導致瀏覽器錯誤地計算高度。我會嘗試設置visibility: hidden,然後當激活visibility: visible