WebUIApplication.Navigated 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
發生于應用程式巡覽時。
public:
static event NavigatedEventHandler ^ Navigated;
// Register
static event_token Navigated(NavigatedEventHandler const& handler) const;
// Revoke with event_token
static void Navigated(event_token const* cookie) const;
// Revoke with event_revoker
static WebUIApplication::Navigated_revoker Navigated(auto_revoke_t, NavigatedEventHandler const& handler) const;
public static event NavigatedEventHandler Navigated;
function onNavigated(eventArgs) { /* Your code */ }
Windows.UI.WebUI.WebUIApplication.addEventListener("navigated", onNavigated);
Windows.UI.WebUI.WebUIApplication.removeEventListener("navigated", onNavigated);
- or -
Windows.UI.WebUI.WebUIApplication.onnavigated = onNavigated;
Public Shared Custom Event Navigated As NavigatedEventHandler
事件類型
範例
註冊流覽的事件,並使用 WebUINavigatedDeferral 物件延遲取消凍結應用程式的 UI,直到從檔案非同步載入狀態為止。
function navigatedHandler(eventArgs) {
var deferral = eventArgs.navigatedOperation.getDeferral();
// Populate the text box with the previously saved value while the app visuals are frozen
app.local.readText(myfile, "default").then(function (str) {
document.getElementById("userText").value = str;
// Complete the deferral to transition back to a live view of the app
deferral.complete();
}, function(error) {
document.getElementById("userText").value = 'undefined';
// Complete the deferral even in the case where readText fails
// else the app would appear hung to the user
deferral.complete();
});
}
Windows.UI.WebUI.WebUIApplication.addEventListener("navigated", navigatedHandler, false);
備註
在大部分情況下,HTML 型 UWP app 絕對不需要流覽或重載其最上層檔。 若要維護全域狀態並建立順暢的使用者體驗,最好是應用程式在相同的最上層頁面中動態載入和卸載其 HTML。
不過,在某些罕見的情況下,您的應用程式可能需要流覽或重載其最上層檔。 當發生這種情況時,會在流覽或重載最上層檔之後引發巡覽事件。 它會在 DOMContentLoaded 事件和 onLoad 事件之前引發。 此事件會通知新頁面,因為應用程式導覽中正在載入,而不是新的啟用。 您可以使用此事件來還原頁面的任何已儲存狀態,並重新初始化應用程式的 UI。
注意
在引發此事件之前,您的應用程式視覺效果將會凍結,讓使用者繼續看到您應用程式的上一頁。 流覽完成之後,系統會轉換至新頁面的 UI。 這可讓您的應用程式在新的頁面上設定其 UI,使用者才能看到它。 如果您需要使用非同步方法來初始化 UI,您可以使用 eventArgs 上的 navigatedOperation 延遲流覽完成。