2010-08-31 33 views
2

我使用基於mootools的分頁工作正常。然而,我想在用戶點擊一個新頁面(從點擊分頁鏈接的底部)返回新的一組評論並回滾到容器div的頂部。Mootools返回包含div的頂部?

是否有一個功能可以使用mootools做類似的事情?

這裏是需要的代碼改變:

var Comments = new Class({ 

id: 0, 
page: 0, 
object: null, 
name: null, 
parentid: 0, 
folder: './', 

initialize: function(id, object, name, folder){ 
    // Setup 
    this.id = id; 
    this.object = object; 
    this.name = name; 
    this.folder = folder; 
    // Get the comments for this page 
    this.getComments(this.page); 
}, 


cacheDefeat: function() { 
    var myDate = new Date(); 
    return '&r=' + myDate.getTime(); 
}, 


getComments: function(page) { 
    this.page = page; 
    var object = this.object; 
    var req = new Request({ 
     method: 'get', 
     url: this.folder + 'backend.php', 
     onSuccess: function(text, xml) { 
      object.set('html', text); 
     } 
    }).send('objid=' + this.name + '&do=read&thumbs=' + $(this.name + "sel").value + '&id=' + this.id + '&page=' + this.page + this.cacheDefeat()); 
}, 
}); 

我找不出正確的方式滾動事件添加到它。

回答

1

你需要的是Fx.Scroll,一個Mootools More Extension。

您可能希望滾動可以使用window訪問的窗口。你想滾動到窗口的某個子元素的開始。幸運的是,Fx.Scroll具有toElement方法,可以爲我們做到這一點。所以,你可以做到以下幾點:

var container = $('idOfDivWithPaginatedContents'); 

var scoller = new Fx.Scroll(window); 

確保上面的代碼是要在其中滾動頁面,否則你將創建的滾動條,而不是隻是一個負載的功能外。然後在裏面的功能(確保你通過滾動和容器作爲參數):

var paginationFunction = function(scroller, container) { 
    //Paginate stuff here 

    scroller.toElement(container); 
}