2012-08-14 58 views
0

我有一個項目表。每個項目都有細節。表格在項目名稱和項目細節之間交替。我爲每個項目行分配一個「項目名稱」類,每個項目詳細信息行爲一個「項目詳細信息」類。當頁面加載時,我隱藏所有的項目細節行,以便只有項目名稱行可見。使用JQuery移動到頁面的不同部分

當用戶點擊一個項目名稱行時,它顯示(展開)該行下方的項目細節。如果用戶點擊不同的項目名稱,則會關閉打開的項目細節並打開與所點擊的新項目對應的項目細節。

我希望頁面滾動到被點擊的項目名稱,這與定位標籤可以用於移動到頁面的不同部分的方式大致相同。現在,如果用戶點擊項目詳細信息中包含大量文本的項目名稱,用戶可能需要向下滾動才能閱讀全部內容。如果用戶點擊下一個項目名稱,它將關閉上述項目細節並打開新的項目細節。但是由於第一項細節太長,新的項目名稱和項目細節實際上在窗口的滾動視圖之上。它們正在擴展到上一個項目的下方,但用戶以前在此點之下滾動。

我考慮命名所有的項目名稱行,並使用jquery使用類別的錨標籤來調用名稱,但這看起來不是最理想的。

是否有jQuery會重新調整窗口的焦點,使點擊的項目名稱在頁面的頂部?

回答

0

這應該工作:

$('.dropdown').click(function() { 
    //drop down code 
    var destination = $(this).offset().top; 
    $("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination-20}, 500); 
    return false; 
}); 
0

你可以說服用點像

function scrollTo(theElement){ 
document.getElementById("myTable").scrollTop=theElement.offsetTop; 
} 

,並調用它被點擊的元素時,或者你可以使用jQuery的scrollTo方法

相關問題