2013-06-19 173 views
0

在我的jQuery Mobile應用程序中,我想在顯示頁面時將UI「滑動」到某個位置,但似乎當我在頁面上獲取元素的偏移對象時,我想在pageshow事件滑動,該y協調始終是1jQuery mobile pageshow獲取元素位置

我的代碼看起來是這樣的:

$(document).on('pageshow', function() { 
    var offset = $('#my-element').offset(); 
    // offset.top is always 1 
}); 

什麼是解決這個問題的最佳方式是什麼?

回答

2

這是一個瘋狂的猜測,但我只知道發生這種情況的一種情況。

,如果你正在尋找也元素在其他一些網頁存在,主要是它是否會在DOM您正在搜索元素之前發現它可以發生。由於該頁面不可見,因此沒有高度。

這應該幫助改變

var offset = $('#my-element').offset(); 

這樣:

var offset = $.mobile.activePage.find('#my-element').offset(); 

$.mobile.activePage是一個選擇,這將使你獲得當前活動的頁面。它會忽略其他一切。