2011-08-01 137 views
0

品牌我想用來自ASOS一個jQuery效果 - http://www.asos.com/Men/A-To-Z-Of-Brands/Cat/pgehtml.aspx?cid=1361#jQuery的滑動點擊

的好處是,當你點擊它的幻燈片了一封信給特定行

的問題是有一個字符限制在我的站點的cms數據庫中,因此Asos中使用的表太龐大而無法使用。 你有什麼想法用div來解決這個問題嗎?

感謝您的幫助

朱迪

+1

如果你能下來編輯把你的代碼的要領和正確選項卡過來的計算器,這將有助於。這個問題也不完全清楚。 – Caimen

+0

感謝Caimen,對於描述這個函數真的很難,所以我剛剛粘貼了一個Asos的鏈接,我試圖從中獲取代碼。謝謝Judi –

+0

*我想爲什麼重建羅馬時,它已經爲你建成了!* ...怎麼樣,因爲*在網站的cms數據庫中有一個字符限制,因此這些表不工作*,也因爲你*知道[你]不應該使用表格*? –

回答

1

您可以使用jQuery的slideUp()slideDown()方法來模擬這種滑動。

假設表格位於'a'處,並且您想要滑動到'c',您可以使用jQuery來滑動'a',並且一旦完成,再次使用jQuery來滑動'b'。您必須使用slideUp()的回調函數指定此值。同樣的事情適用於重新顯示元素(即從'c'到'a'),除非您使用slideDown()來取消隱藏元素。下面是一些代碼,我寫爲例:

function hideRecur(startLetterEl, stopLetterEl){ 
    if(startLetterEl === stopLetterEl){ 
     return; 
    } 
    $(startLetterEl).slideUp("slow", 
     function(){ 
      var nextEl = $(startLetterEl).next()[0]; 
      if(nextEl){ 
       hideRecur(nextEl, stopLetterEl); 
      } 
     } 
    ); 
} 
function showRecur(startLetterEl, stopLetterEl){ 
    if(startLetterEl === stopLetterEl){ 
     return; 
    } 
    $(startLetterEl).slideDown("slow", 
     function(){ 
      var prevEl = $(startLetterEl).prev()[0]; 
      if(prevEl){ 
       showRecur(prevEl, stopLetterEl); 
      } 
     } 
    ); 
} 

Here's a jsfiddle demonstrating this

+0

謝謝fsong,那太棒了。它工作得很好。我在jquery上有點新手。只有當我把全部的字母表放入時,它纔會出現在E中。有沒有辦法爲所有字母設置?另外如果我全部顯示所有鏈接是否有辦法讓它回到A?非常感謝。 Judi –

+0

Opps我的錯誤忘了把ID也放在那,爲什麼它只是去了E. :) –