2012-07-04 19 views
7

我正在使用jQueryMobile的$.mobile.changePage(...)方法切換到我的項目中的其他頁面。定義頁面更改之間的返回轉換

$.mobile.changePage("#foo", { 
transition:"slide" 
}); 

當我運行該方法時,轉換完美,但當我點擊瀏覽器的返回按鈕時,我看不到任何反轉。

我玩弄了http://jquerymobile.com/test/docs/api/methods.html中描述的一些參數,但沒有運氣。

特別設置reverse:true只是在向前移動到目標頁面時顛倒過渡,但當我點擊後退按鈕時仍然沒有過渡。


更新:好像看到數據的rel =「後面」的伎倆爲通過定義「orginary鏈接」的<a> -tag 什麼,我需要調用的時候是JavaScript相當於$.mobile.changePage()功能。

+0

你用什麼瀏覽器進行測試? –

+0

@John Safari(iPhone) – Timo

回答

0

找到它。

我們的開發人員之一在全球範圍內關閉了所有返回轉換,因此毫無疑問,它不起作用。

這是他用的。去掉那條線就行了。

$.mobile.changePage.defaults.transition = "none"; 
2

看一看這個頁面,http://jsfiddle.net/nachiket/mDTK2/show/light/
正常工作與我。

點擊(第1頁)顯示從左到右的過渡,&返回按鈕(第2頁)顯示從右向左過渡。

來源:http://jsfiddle.net/nachiket/mDTK2/
如果它工作不正常,請分享您的瀏覽和其他細節。
如果示例工作正常,但不是你的代碼,使一個jsfiddle突出顯示你的問題,所以我可以檢查和更新代碼/答案。

+0

是的,創建一個普通的jQM項目工作正常。看起來這種行爲只出現在我的應用程序中。不幸的是,源代碼是保密的。調試這個很好的做法是什麼? – Timo

+0

@valmar您應該啓用Safari的調試控制檯:http://osxdaily.com/2012/05/07/enable-safari-debug-console-ios/ –

2

對於要具有逆轉移上,你可以使用data-direction="reverse"data-rel="back"

實例鏈接:

<div data-role="page" > 
    <div data-role="header"><h3> Header </h3> </div> 
    <div data-role="content" >  
     <a href="#page2" data-role="button" data-transition="slide">Page 2</a> 
    </div> 
</div> 

<div data-role="page" id="page2"> 
    <div data-role="header"><h3> Header </h3> </div> 
    <div data-role="content" >  
     <a href="#" data-rel="back" data-role="button" data-direction="reverse" >Back</a> 
    </div> 
</div>​ 

的jsfiddle:

文檔:

UPDATE

從您的評論

"Yeah, but how do I do that with the JavaScript function $.mobile.changePage()?" 

文檔:

引用:

Properties: 
    reverse (boolean, default: false) Decides what direction the transition will run when showing the page. 
+0

是的,但我怎麼用JavaScript函數' $ .mobile.changePage()'? – Timo

+0

看到更新請 –

+0

不,這是錯誤的。正如我在我原來的問題中已經說過的那樣,使用'reverse = true'只會告訴jQM在從一個頁面前進到另一個頁面時使用後退轉換。回到上一頁時,它不會影響過渡。 – Timo

相關問題