我有兩個場景需要幫助,並且我認爲將它們放在一起會證明更多 對於我和其他觀衆來說很有價值。在基於dojo的應用程序的javascript中轉換視圖
設置:
Worklight 6.1
dojo 1.9
Application:
MainView.html (Contains Body, and a transition Div, and NorthSouthView.js script reference)
View1.html (Contains a single Div that displays and unordered list
View2.html (Contains a single Div that Displays <p> data, and also plays audio)
View3.html (Contains a single Div that Displays instructional information)
application-descriptor <mainFile> MainView.html </mainFile>
All of the views are stored together in the application. There are no external http queries made by the application. All view transitions are local to the application.
方案1:
At application start the MainView.html is invoked by worklight. Anticipated format::
<body>
<div>
<h1 id="SSheader" data-dojo-type="dojox.mobile.Heading" data-dojo-props='fixed:"top"'>Loan Snapshot</h1>
</div>
<div id="TransitionViewDiv">
/* Would like to load content of View1.html, View2.html, or View3.html here */
</div>
<script>SetView.js</script>
</body>
Description + Questions:
When the application starts, SetView.js will be loaded, and the purpose of this script is to look at localStorage and determine which view should be displayed. (View1, View2, or View3). The goal is to keep SSheader fixed at the top of the screen at all times. Only TransitionViewDiv would update.
問題:
欣賞任何意見來完成上述方法,或歡迎的最佳實踐任何建議完成轉型。
場景#2:
作爲上述場景1的後續。一旦View1,2或3成功加載,視圖將定義按鈕,這些按鈕將導致過渡到另一個剩餘視圖。因此,如果SetView.js中的內容是在View2中滑動顯示的,View2 將具有想要加載的按鈕,例如View3.html。
說明+問題:
1)請問最好的方法,從View2.html加載View3.html被使用moveTo點擊按鈕,或應按鈕使用回調來調用JavaScript引起類似於用來加載初始視圖的過渡?
欣賞關於管理存儲在獨立文件中的多個視圖的最佳實踐的任何建議。最終,應用程序將擁有15個以上的ViewXX.html文件,每個文件都包含一個Div。基於此,在一個HTML文件中擁有所有視圖並強制隱藏,並且顯示不可行。
感謝您的時間,並幫助
請忽略先前的評論。它格式不正確。已更新的Commet:Scenaio#1已完成,導致固定的heaer Div,隨後是「ContentPane」,並且ContentPane包含如您所描述的以編程方式加載的View2.html。 View2.html是一個帶有2個選項卡按鈕的Div。我可以使用tabbar按鈕來調用一個js文件,以再次更新「TransitionViewDiv」ContentPane href = View3.html並將View3.html加載到ContentPane中,替代View2.html?這種方法是否可行,並接受了良好的做法?非常感謝您的幫助和建議。 –
這是可能的。 ContentPane也呈現您的小部件,只需在您的獨立視圖中定義您的事件聲明。但事件處理程序本身(JavaScript代碼)必須在'MainView.html'中加載(視圖中的JavaScript被'ContentPane'忽略)。 – g00glen00b
謝謝。我很欣賞這個建議。現在就着手實施。 –