(0) exportieren Drucken
Alle erweitern
0 von 1 fanden dies hilfreich - Dieses Thema bewerten.

Dynamisches Hinzufügen von Elementen zu einer Sprungliste

.NET Framework 3.0

In der Aufgabe Erstellen einer benutzerdefinierten Sprunglistenkategorie haben Sie gelernt, wie Sie eine benutzerdefinierte Sprunglistenkategorie erstellen und anzeigen. In dieser Aufgabe fügen Sie Elemente dynamisch zur Sprungliste hinzu.

Hinweis  Die benutzerdefinierte Sprunglistenkategorie ist hauptsächlich für Aufgaben gedacht, die sich im Verlauf der Zeit ändern. Vordefinierte Aufgaben, die sich nicht häufig verändern, können beim Installieren der angehefteten Websiteverknüpfung erstellt werden. Weitere Informationen finden Sie unter Hinzufügen von Aufgaben zu einer Sprungliste.

In dieser Aufgabe verwendete Methoden

Folgende Methoden werden in diesem Thema eingeführt:

msSiteModeAddJumpListItem(bstrName, bstrActionUri, bstrIconUri [, bstrWindowType])

Die window.external.msSiteModeAddJumpListItem-Methode fügt Elemente dynamisch zur benutzerdefinierten Sprunglistenkategorie hinzu.

msSiteModeShowJumpList()

Die window.external.msSiteModeShowJumpList-Methode aktualisiert die sichtbaren Elemente in der benutzerdefinierten Sprungliste.

Hinzufügen von Elementen zu einer Sprungliste

Für einen Entwickler kann das Erstellen benutzerdefinierter Sprunglistenkategorien einen schnellen Zugriff auf häufig verwendete Ziele auf Ihren Sites bieten. Mithilfe dieser benutzerdefinierten Kategorien kann ein Benutzer einfach zu zuvor angezeigten Seiten (Verlauf) zurückkehren, auf benutzerspezifische Informationen zugreifen (z. B. Radiosender) oder Websiteinteraktionen nachverfolgen (z. B. Einkaufslisten). Wenn ein Benutzer ein benutzerdefiniertes Element aus der Sprungliste auswählt, wird dieses direkt im Fenster für die angeheftete Site geöffnet. Benutzerdefinierte Elemente werden standardmäßig in einer neuen Registerkarte geöffnet. Mithilfe des bstrWindowType-Parameters können den Link jedoch durch Angabe von self in der aktuellen Registerkarte oder durch Angabe von window in einem neuen Fenster für die angeheftete Site öffnen.

Bevor Sie Sprunglistenelemente hinzufügen können, müssen Sie eine benutzerdefinierte Sprunglistenkategorie erstellen. Weitere Informationen finden Sie unter Erstellen einer benutzerdefinierten Sprunglistenkategorie. Nachdem Sie die Kategorieliste erstellt haben, fügen Sie die Elemente durch Aufrufen der msSiteModeAddJumpListItem-Methode hinzu. Elemente werden am Listenanfang in der umgekehrten Reihenfolge hinzugefügt, in der sie im Skript angezeigt werden.

Im nächsten Beispiel werden zwei Aufgaben in einer benutzerdefinierten "Meine Website"-Kategorieliste unmittelbar nach dem Laden der Seite als Reaktion auf das onload-Ereignis gespeichert. Beachten Sie, wie "Task2" vor "Task1" definiert wird, sodass sie in der Sprungliste in der richtigen Reihenfolge angezeigt werden.


var g_ext = null;
window.onload = function()
{
    try {
        if (window.external.msIsSiteMode()) {
            g_ext = window.external;
            g_ext.msSiteModeCreateJumpList("My Site");
            g_ext.msSiteModeAddJumpListItem(
                "Task2", "/users/44324847/task2", "img/icon.ico");
            g_ext.msSiteModeAddJumpListItem(
                "Task1", "/users/44324847/task1", "img/icon.ico");
        }
    }
    catch (ex) {
        // Fail silently.
    }
}


Die Elemente in einer Sprungliste bleiben auch dann sichtbar, nachdem Sie eine angeheftete Site geschlossen haben. Wie die mit Metadaten definierte Site Aufgaben können dynamische Elemente ebenso als Verknüpfungen mit Zielen auf Ihrer Website dienen. Wenn die dynamischen Elemente jedoch vom Anwendungszustand abhängen, sind sie nach dem Schließen der Site nicht mehr gültig. Links in einer Sprungliste sollten ausreichend Informationen enthalten, um bei Bedarf ohne Anwendungszustand navigieren zu können.

Hinweis  Eine benutzerdefinierte Sprunglistenkategorie sollte einen dynamischen Satz von Zielen bereitstellen, die für den aktuellen Benutzer spezifisch angepasst, jedoch vom Anwendungsstatus und der aktuellen Webseite unabhängig sind. Stellen Sie sicher, dass die Elemente in Ihrer Sprungliste der Absicht der Website dienen, auf Kundenbedürfnisse eingehen und ausreichend Informationen enthalten, um nützlich zu sein.

Obwohl eine benutzerdefinierte Sprunglistenkategorie bis zu 20 Elemente enthalten kann, werden standardmäßig nur die letzten 10 Elemente in der Liste angezeigt. Die Anzahl der angezeigten Sprunglistenelemente wird letztlich von der Taskleiste gesteuert.

So ändern Sie die Standardeinstellungen der Taskleiste

  1. Klicken Sie mit der rechten Maustaste auf Start und dann auf Eigenschaften.
  2. Klicken Sie auf der Registerkarte Startmenü auf die Schaltfläche Anpassen, um das Dialogfeld Startmenü anpassen zu öffnen.
  3. Ändern Sie die Option Anzahl der zuletzt verwendeten, in Sprunglisten anzuzeigenden Elemente in eine Anzahl, die Ihren Bedürfnissen entspricht.
  4. Klicken Sie zum Schließen des Dialogfelds auf OK.

Bedarfsgesteuertes Aktualisieren von Sprunglistenelementen

Im vorherigen Abschnitt haben Sie eine benutzerdefinierte Sprunglistenkategorie während des onload-Ereignisses aktualisiert. Die API für angeheftete Sites wurde entwickelt, um Änderungen an der Sprungliste zu diesem Zeitpunkt zu akzeptieren. Nachfolgende Änderungen an der Sprungliste werden jedoch nicht automatisch angezeigt. Wenn Sie z. B. Elemente zur Sprungliste hinzufügen, nachdem die Seite aufgrund einer Benutzeraktivität oder Sitekonfiguration geladen wurde, müssen Sie die msSiteModeShowJumpList-Methode aufrufen, um diese Änderungen in die Sprungliste zu schreiben.

Das folgende Skript wird als Reaktion auf das Klicken auf eine Schaltfläche ausgeführt. Der Code wurde durch die Verwendung der im Codebeispiel des vorherigen Abschnitts festgelegten globalen Variablen vereinfacht.


function buttonClick()
{
    if (g_ext) {
        // Optionally, remove and re-create category.
        g_ext.msSiteModeClearJumpList();
        g_ext.msSiteModeCreateJumpList("My Site");

        // Add items to the Jump List here.
        g_ext.msSiteModeAddJumpListItem(
            "Task4", "/users/44324847/task4", "img/icon.ico");
        g_ext.msSiteModeAddJumpListItem(
            "Task3", "/users/44324847/task3", "img/icon.ico");

        // Show updates to the Jump List.
        g_ext.msSiteModeShowJumplist();
    }
}


Löschen der Sprungliste, Ergänzung

Wenn ein vom Skript hinzuzufügendes Element dem Namen und der URL eines Elements entspricht, das vom Benutzer entfernt wurde, dann wird dieses Element nicht zur Liste hinzugefügt. Durch das Löschen der Liste werden jedoch auch sämtliche Informationen darüber gelöscht, welche Elemente vom Benutzer entfernt wurden. Dadurch können Elemente von der Site erneut erstellt werden, die bereits entfernt wurden.

Hinweis  Neben dem Aktualisieren der Sprungliste löst die msSiteModeShowJumpList-Methode das onmssitemodejumplistitemremoved-Ereignis für jedes Element aus, das seit dem letzten Aufruf der msSiteModeShowJumpList-Methode vom Benutzer entfernt wurde. Dieses Ereignis wird nicht ausgelöst, wenn msSiteModeClearJumpList aufgerufen wird.

Das Löschen der Liste ist optional und ist daher zu vermeiden, wenn die Auswahl der Benutzer respektiert werden soll.

Zusammenfassung

Die TweetFeed-Beispielanwendung erstellt eine benutzerdefinierte Sprunglistenkategorie, die vorherige Suchergebnisse enthält. Wenn der Benutzer auf die Links klickt, wird die Suche von der Site erneut gestartet. Dazu müssen die Links ausreichend Informationen zum Wiederholen der Suche enthalten, auch wenn die Site nicht aktiv ist. Der folgende Beispielcode veranschaulicht die Vorgehensweise.


tweetQuery = document.getElementById("txtSearch").value;
if (tweetQuery.length > maxTweetSize) {
    tweetQuery = tweetQuery.substr(0, maxTweetSize);
}

try {
    if (window.external.msIsSiteMode()) {
        var itemURL = "http://" + window.location.host 
                       + window.location.pathname 
                       + "?tweet=" + escape(tweetQuery);
        window.external.msSiteModeAddJumpListItem(
                       tweetQuery, itemURL, 
                       "http://twitter.com/favicon.ico");
        window.external.msSiteModeShowJumplist();
    }
}
catch (e) {
    // Fail silently.
}


Folgende Schritte werden durch das Codebeispiel ausgeführt.

  1. Zuerst wird die Abfrage aus einem Formularfeld gelesen.
  2. Dann wird eine URL erstellt, mit deren Hilfe die Suchabfrage wiederholt werden kann.
  3. Abschließend wird die URL zur Sprungliste hinzugefügt, indem diemsSiteModeAddJumpListItem-Methode aufgerufen wird, und die Liste wird durch den Aufruf der msSiteModeShowJumpList-Methode aktualisiert.

Nächste Schritte

Sie haben dieses Szenario abgeschlossen. Um zu erfahren, wie in der Beispielanwendung TweetFeed Symbolüberlagerungen verwendet werden, um die Siteaktivität auf der Taskleistenschaltfläche darzustellen, fahren Sie mit dem Szenario TweetFeed-Beispiel: Benachrichtigungen fort:

Weitere Beispiele

In diesem Abschnitt wird gezeigt, wie einige beliebte Websites in den Vereinigten Staaten ihre Benutzerfreundlichkeit in Windows Internet Explorer 9 mithilfe einer benutzerdefinierten Sprunglistenkategorie erhöht haben.

Amazon.com

Die Sprungliste von "Amazon.com" enthält Aufgaben und Favoriten.

"Amazon.com" leistet beim Trennen der Aufgaben (Verben) von den Zielen (Substantive) gute Arbeit. Da die benutzerdefinierte Sprunglistenkategorie beim Laden der Seite erstellt wird, ist die msSiteModeShowJumpList-Methode nicht erforderlich. Beachten Sie, wie die Elemente in der umgekehrten Reihenfolge hinzugefügt werden, in der sie in der Sprungliste angezeigt werden.


<script type='text/javascript'>
try {
window.external.msSiteModeCreateJumplist('Amazon Favorites');
window.external.msSiteModeAddJumpListItem 
    ('Amazon Wish List' , 
     'http://www.amazon.com/wishlist?tag=amzn-ie9-jl-wl-20',
     'http://www.amazon.com/favicon.ico');
window.external.msSiteModeAddJumpListItem 
    ('Amazon Prime' ,
     'http://www.amazon.com/gp/prime?tag=amzn-ie9-jl-prm-20',
     'http://www.amazon.com/favicon.ico');
// ...

} catch (ex) {
}
</script>


HuffingtonPost.com

Bildschirmfoto der Sprunglistenkategorie von "HuffingtonPost.com"

"HuffingtonPost.com" verwendet eine benutzerdefinierte und dynamische Sprungliste, um die wichtigsten Big News des Tages anzuzeigen.

Verwandte Themen

Aufgaben
Hinzufügen von Aufgaben zu einer Sprungliste
Erstellen einer benutzerdefinierten Sprunglistenkategorie
Konzepte
Signalbenachrichtigungen, direkt an Ihre angeheftete Website in Windows 8
Fresh Tweets 2.0 – Demo für Windows 8
Qualitativ hochwertige Darstellung von angehefteten Websites in Windows 8
Erstellen von dynamischen Sprunglisten
Einführung in angeheftete Sites
Angeheftete Sites
Angeheftete Websites in Windows 8

 

 

Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.
Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.