Also, viel Suche und Versuche mit verschiedenen Methoden zur Deaktivierung der Zurück-Schaltfläche, habe ich endlich eine anständige Lösung gefunden. Es wurde von einer anderen Frage auf Stackoverflow adaptiert.
Ursprünglicher Algorithmus: Wie man Element nach Klasse in JavaScript erhält?
MEINE LÖSUNG
Am Anfang einer Fragmentseite, genau wenn die Seitendefinition mit der Bereitschaftsfunktion beginnt, habe ich eine angepasste Version des obigen Algorithmus verwendet und die resultierende Elementauswahl verwendet, um das deaktivierte Attribut festzulegen.
// Generierte Zurück-Schaltfläche abrufen
var elems = document.getElementsByTagName('*'), i;
for (i in elems)
{
if((" "+elems[i].className+" ").indexOf("win-backbutton") > -1)
{
var d = elems[i];
}
}
// Deaktivieren der Zurück-Schaltfläche
d.setAttribute("disabled", "disabled");
Der Code holt alle Elemente aus dem DOM der Seite und filtert sie nach der generierten Zurück-Schaltfläche. Wenn das richtige Element gefunden wird, wird es einer Variablen zugewiesen und von dort aus können wir die deaktivierte Eigenschaft festlegen.
Ich konnte nicht viel Dokumentation darüber finden, wie man die Standardnavigation in einer WinJS-Navigations-App umgeht, also hier sind einige Methoden, die fehlgeschlagen sind (zur Referenz):
-
Das Element nach Klasse abrufen und einstellen | Könnte daran gescheitert sein, dass ich es falsch gemacht habe, da ich wenig Erfahrung mit HTML und JavaScript habe.
-
Verwendung der obigen Methode, aber das Attribut innerhalb der for-Schleife setzen bricht die App ab und lässt sie aus unbekannten Gründen einfrieren.
-
Setzen des Attributes in der default.js, bevor die Navigation abgeschlossen ist. | Die JavaScript-Aufrufe würden weder die aufgerufenen Methoden noch DOM-Elemente erkennen, vermutlich aufgrund des Initialisierungszustands der Seite.
Es gab noch einige andere, aber ich denke, es muss einen besseren Weg geben, um das Element nach dem Laden einer Seite abzurufen. Wenn mich jemand aufklären kann, wäre ich sehr dankbar. ~Sean R.