Una novità che IE8 ha portato con sè è rappresentata dagli Accelerator (acceleratori in italiano). Come il nome stesso lascia intuire, si tratta di “scorciatoie veloci” per accedere a specifiche funzionalità direttamente dalla pagina web che si sta visitando. Un tipico esempio è tradurre una determinata parola in una lingua oppure tradurre l’intera pagina o ancora segnalare un link via mail.
La cosa carina è che, ovviamente, possiamo creare degli accelerator personalizzati :) Vediamo un esempio.
Cercare nell’area Download di VB T&T
Supponiamo di voler cercare nell’area download di VBT&T qualcosa che stiamo leggendo in una pagina web qualunque (ad esempio il nome di tool). Attualmente quello che faremmo è andare nell’area download del sito e digitare qualcosa nella text box di ricerca. Bene, noi vorremmo selezionare la parola (o il testo) e cercare nel sito di VBT&T semplicemente selezionando l’opzione dal menu contestuale messo a disposizione di IE8.
Sostanzialmente si tratta di riprodurre lo stesso meccanismo del box di ricerca nella pagina di download del sito che non fa altro che richiamare questa url quando premiamo il tasto CERCA:
http://www.visual-basic.it/areadownload.asp?key=[testo da cercare]
dove key è il nome della TextBox di ricerca.
Creare un accelerator
Un accelerator è rappresentato da un file xml che ne definisce il funzionamento. Un esempio di schema (molto semplice) da utilizzare è il seguente:
1: <?xml version="1.0" encoding="UTF-8"?>
2: <openServiceDescription xmlns="http://www.microsoft.com/schemas/openservicedescription/1.0">
3: <homepageUrl>http://www.visual-basic.it/areadownload.asp</homepageUrl>
4: <display>
5: <name>Cerca nell'Area Download di VB T&T</name>
6: <icon></icon>
7: </display>
8: <activity category="Search">
9: <activityAction context="selection">
10: <execute action="http://www.visual-basic.it/areadownload.asp">
11: <parameter name="key" value="{selection}" type="text" /> 12: </execute>
13: </activityAction>
14: </activity>
15: </openServiceDescription>
Gli elementi <homepageUrl> e <display> definiscono nome e l’eventuale icona da visualizzare nel menu contestuale di IE8 (righe 3-7). Più interessante è l’elemento <activity> (righe 8-14). Qui viene definito il comportamento dell’accelerator. Nello specifico la riga 9 indica che il nostro acceleratore agisce sulla selezione di testo corrente mentre la riga 10 definisce l’azione vera e propria che bisogna eseguire quando l’utente seleziona l’accelerator. L’Action deve essere sempre una url da richiamare in POST o GET (default) a cui è possibile passare dei parametri come specificato nella riga 11 dove passiamo il testo selezionato dall’utente rappresentato dalla variabile {selection}.
Niente di così complicato :) Questo è già un accelerator funzionante!
Pubblicazione di un accelerator
Perchè un accelerator possa essere utilizzato dagli utenti bisogna che sia pubblicato su un server web, dopodichè è sufficiente installarlo attraverso la nuova API window.external.AddService(<url>). Quindi, possiamo creare un link per consentire agli utenti di installarlo sul proprio browser con un semplice click:
<a href="javascript:window.external.AddService('http://www.visual-basic.it/vbtt_downloadsearch_ie8Accelerator.xml')">
Installa VB T&T Accelerator for IE8
</a>
Installa VBT&T Accelerator for IE8
Cliccando su link precedente ci viene chiesto se vogliamo installare l’accelerator:
dopo la conferma possiamo utilizzare immediatamente l’accelerator:
Il cui risultato è:

Oltre che semplice risulta anche molto pratico!
Maggiori informazioni le potete trovare qui:
OpenService Accelerators Developer Guide