![]() |
|
Introduzione al Dhtml col VBS: un menu con VBScript
Comparso su HTML.it il 4 Dicembre 2002 - E' vietata la riproduzione, anche parziale, senza esplicito consenso dell'autore
<table>
<tr>
<td class="VocePrincipale" onClick="VBMenu(0)">Voce principale # 1</td>
</tr>
<tr>
<td style="padding-left: 5px;">
<div id="VariLink0" class="NascondiMenu">
<a href="#" class="SottoVoci">Sotto-voce # 1</a><br>
<a href="#" class="SottoVoci">Sotto-voce # 2</a><br>
<a href="#" class="SottoVoci">Sotto-voce # 3</a><br>
</div>
</td>
</tr>
<tr>
<td class="VocePrincipale" onClick="VBMenu(1)">Voce principale # 2</td>
</tr>
<tr>
<td style="padding-left: 5px;">
<div id="VariLink1" class="NascondiMenu">
<a href="#" class="SottoVoci">Sotto-voce # 1</a><br>
<a href="#" class="SottoVoci">Sotto-voce # 2</a><br>
<a href="#" class="SottoVoci">Sotto-voce # 3</a><br>
</div>
</td>
</tr>
</table>
In questo modo avremo due sole voci principali con i relativi sotto-menu, ho ritenuto opportuno iniziare in questo modo per rendere meglio l'idea dal punto di vista visivo, come è possibile constatare sono stati assegnati una serie di identificativi univoci di tipo id agli elementi HTML della struttura appena presentata che andranno implementati di una unità per ogni voce principale del menu, <div id="VariLink0" ...> diventerà <div id="VariLink1" ...> e così via, allo stesso modo la sub-routine che richiamiamo all'evento onClick assegnato alla cella contenente la voce principale avrà tra parentesi un numero sempre crescente di una unità: questo aspetto sarà più chiaro dopo aver esaminato il codice VBScript del menu.Il foglio di stile Css del menu Il foglio di stile Css che utilizziamo per il menu è di semplice comprensione per chi ha anche solo una lieve infarinatura di Css, al di là della formattazione dei font, dei colori e degli stili in generale, nel codice di seguito proposto evidenzio i passaggi fondamentali del foglio di stile al fine del funzionamento del menu:
<style type="text/css">
td.VocePrincipale
{
cursor: Hand;
font-family: Verdana;
font-size: 12px;
font-weight: Bold;
}
div.NascondiMenu
{
display: None;
}
div.MostraMenu
{
font-family: Verdana;
font-size: 11px;
display: Inline;
}
a.SottoVoci
{
color: #0000FF;
text-decoration: None;
}
a:hover.SottoVoci
{
color: #FF0000;
text-decoration: Underline;
}
</style>
Come è dunque possibile constatare le uniche fasi fondamentali di questo foglio di stile sono rappresentate dalle classi NascondiMenu che, come il nome stesso lascia ad intendere, nasconde il menu sia al caricamento che al secondo click sulla voce principale, ovvero dopo che è stata aperta e si è fatto riferimento, nella stessa sub-routine, all'altra classe, MostraMenu, che ovviamente mostra le sotto-voci al click sulla voce principale.La classe VocePrincipale conferisce alla voce principale uno stile tale da farlo assomigliare ad un link, dato che, come si denota dal costrutto HTML di cui sopra, non viene creato un vero e proprio link, ma viene utilizzato all'interno della cella l'evento onClick che fa riferimento alla sub-routine che analizzeremo a breve. La classe SottoVoci, invece, formatta i link delle sotto-voci, stilizzarli in un modo piuttosto che in un altro è un compito che demando al lettore che avrà cura di associarli allo stile del proprio sito, e comunque è un aspetto che non riguarda il menu in questione ed il suo funzionamento. Conclusa questa parte strutturale del menu passiamo alla fase di realizzazione dello script per il suo funzionamento. Fase clou della costruzione del menu: lo script VBScript Lo script di riferimento per la realizzazione del menu è molto semplice e chiaro e potrà essere ampliato dal lettore che, fatta un po di pratica con la manipolazione degli stili, ed approfondita la teoria del DHTML, non avrà problemi a sbizarrirsi e creare effetti molto suggestivi! Ecco il codice:
<script language="VBScript">
Option Explicit
Dim Identificatore
Dim Oggetto
Sub VBMenu(Identificatore)
Oggetto = "VariLink" & Identificatore
If document.all.item(Oggetto).className = "MostraMenu" Then ' Se il menu è aperto lo chiude
document.all.item(Oggetto).className = "NascondiMenu"
Else
document.all.item(Oggetto).className = "MostraMenu" ' Se il menu è chiuso lo apre
End If
End Sub
</script>
I commenti all'interno del codice non lasciano spazio ad ulteriori puntualizzazioni sul suo utilizzo; a dispetto delle apparenze iniziali è possibile notare che è composto davvero da poche righe e pochi e semplici passaggi.
TAGS - dhtml, vbscript, javascript |
IN EVIDENZA
Una slidegallery con jQuery
Pagamenti online con PayPal e PHP
Guadagna col tuo sito grazie a TradeD...
Riavviare IIS
Effetto ombra su testo con Photoshop
Guida XHTML
Riscrivere le URL con Asp
Generare password casuali in Javascri...
Errore 80004005: Cannot update. Datab...
Referenze dei Tag Html
HTTP 500 internal server error
Introduzione ad Ajax ed Asp con Jscri...
Breve guida a jQuery
Stringhe di connessione via ODBC e Ol...
Referenze dei fogli di stile Css
Le espressioni regolari in Javascript
|
||||
© 2001/2012 lukeonweb.net - A cura di Luca Ruggiero, Partita IVA 05564851219 -
Privacy |
Pubblicità |
Contatti
| |||||