-1

私の Windows 8 アプリケーションでは、ページが読み込まれるときにいくつかのコードを実行する必要がありますが、default.js ファイルのアプリケーション レベルで実行する必要があります。ページが DOM に読み込まれるときに一般的にアタッチするために使用できるイベントはありますか?

4

1 に答える 1

0

default.js には、既にWinJS.Navigationへの参照があるため、次のようにすることができます。

nav.addEventListener("navigated", function (e) { 
     console.log('loaded a new page ' + e.detail.location); 
});

これは、実際にDOMにロードするのではなく、ページからページに移動するときに発生します(具体的にどの程度意味するかはわかりません)。

ページを実際に DOM にロードしたときに何かを発生させたい場合は、ページにオーバーライドロードを追加して、たとえばWinJS.Applicationでメソッドを呼び出すことができます (unload既に取得したページ コードの一部です)。発生)

    load: function()
    {
        WinJS.Application.doSomething();
    },

    unload: function () {
        this._items.dispose();
    },

app.js のアプリケーションのコードでは、次のようになります。

    app.doSomething = function () { console.log("I did something"); }

ただし、ここに問題があります。loadをオーバーライドすると、2 回目の呼び出しで HierarchyRequestError が表示されます。

于 2013-01-16T05:43:42.977 に答える