編輯:澄清我希望#捕獲照片按鈕來激活,但我想重置它時,我編程導航到另一頁。防止jQuery手機按鈕的默認行爲
我目前正在構建一個使用jQuery框架的Phonegap/Cordova應用程序。大多數都很好 - 除了一種情況。
我有一個固定頁腳(工程很好)與導航欄和三個按鈕。
兩個按鈕轉到常規頁面沒有ajax,他們工作得很好。
一個按鈕掛接到相機接口並觸發(即)iPhone上的相機。如果我取消我回到屏幕,但相機的按鈕現在具有活動狀態和樣式。
我觸發了一個失敗的changePage頁面得到激活,但它不會改變按鈕的狀態!?我試圖手動刪除類沒有成功!?有些東西似乎延遲了活動狀態類的添加,直到或某事。
我做錯了嗎?不應該changePage()找到並觸發它的錨?
在專輯頁面頁腳看起來是這樣的:
<div class="footer" data-role="footer" data-position="fixed" data-id="footer-tab">
<div data-role="navbar" class="nav-glyphish">
<ul>
<li><a id="welcome" href="#welcome"></a></li>
<li><a id="capture-photo"></a></li>
<li><a id="show-album" href="#album" class="ui-btn-active ui-state-persist"></a></li>
</ul>
</div>
</div>
如此反覆 - 在#捕捉照片按鈕沒有相應的頁面,但是當我點擊它就會被激活,如果我取消了攝像頭 - jqm捕獲changePage並轉到#show-album,但#capture-photo按鈕仍被標記爲活動。
P.S我在兩個頁面上都有相同的頁腳(data-role ='footer'),除了它們各自的錨點具有ui-btn-active和ui-state-persist集合。我對這個重複的代碼感到有點不舒服,但它似乎是解決持久化頁眉/頁腳的唯一方法?
你的意思是像做e.preventDefault();點擊? – 2012-07-30 18:34:11
不是真的:(我在編輯中稍微澄清了一下:) – 2012-07-30 18:41:12
現在我嘗試手動觸發它,如下所示:'$('#album#show-album')。trigger('vclick')'running'$ .mobile .changePage('#album')'它實際上起作用,但是當我導航到#welcome頁面時,它又被激活了(!?!?) - 所以現在#welcome-page和#capture-photo都是活動的(!?!?)。 – 2012-07-30 18:50:30