Notizie: lo sai che puoi installare Firefox anche su dispositivi Apple iPhone e iPad? Provalo subito!

Autore Topic: menu a tendina con javascript  (Letto 4754 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline facco

  • Post: 21
menu a tendina con javascript
« il: 15 Marzo 2005 11:08:34 »
Sono un nuovo utente (entusiasta) di Firefox. Non riesco però a capire come mai non vedo i menù a tendina javascript. Mi viene visualizzata solo la barra principale e non scende la tendina. Ho provato ad installare la versione più recente di Java Sun ma non cambia nulla. Aiutatemi!!!  :roll:

Offline facco

  • Post: 21
menu a tendina con javascript
« Risposta #1 il: 15 Marzo 2005 11:19:06 »
Allego il  link a un sito dove il menù a tendina funziona correttamente con IE e non con FF: www.scarponauti.it

Offline facco

  • Post: 21
menu a tendina con javascript
« Risposta #2 il: 15 Marzo 2005 11:29:49 »
il sito è quello che ho riportato sopra: www.scarponauti.it
Ma se il codice è sbagliato, non dovrebbe dare un errore anche in Explorer? Invece lì si vede tutto senza problemi.
Mi spiace di aver sbagliato forum, sono nuovo dell'ambiente...

Offline klades

  • Moderatore
  • Post: 5788
    • http://www.nic-nac-project.org/~kaosmos
menu a tendina con javascript
« Risposta #3 il: 15 Marzo 2005 11:54:20 »
Quel sito richiama uno script in Javascript (che puoi vedere qui http://www.scarponauti.it/scarpo1orange.js) che ha delle istruzioni che dicono: "se il browser è internet explorer mostra i menù, altrimenti no".
La prova è che installando l'estensione "user agent switcher", che consente di far credere ai siti che Firefox sia Internet Explorer (cerca sul forum per trovare dove scaricarla), i menù a tendina si vedono.
Se sei un frequentatore di quel sito, scrivi al webmaster per segnalare il problema.

La Java Virtual Machine della Sun non c'entra nulla, serve per le parti dei siti in Java, che è un linguaggio diverso da Javascript, nonostante la somiglianza del nome.

Ciao, Paolo

Offline facco

  • Post: 21
menu a tendina con javascript
« Risposta #4 il: 15 Marzo 2005 12:14:51 »
In realtà, confesso che sono io il webmaster! Naturalmente dilettante e amatoriale. Mi scoccia assai, visto che sono molto contrario alla politica delle multinazionali, che il mio sito venga visto dagli utenti di explorer e non da quelli di Firefox!!! Quindi vorrei rimediare. Il menù a tendina l'ho costruito con Selteco MenuMaker. Dove trovo le istruzioni che dici? E come posso cancellarle? Grazie mille!  :lol:

Offline klades

  • Moderatore
  • Post: 5788
    • http://www.nic-nac-project.org/~kaosmos
menu a tendina con javascript
« Risposta #5 il: 15 Marzo 2005 13:07:06 »
Citazione da: facco
In realtà, confesso che sono io il webmaster! Naturalmente dilettante e amatoriale. Mi scoccia assai, visto che sono molto contrario alla politica delle multinazionali, che il mio sito venga visto dagli utenti di explorer e non da quelli di Firefox!!! Quindi vorrei rimediare. Il menù a tendina l'ho costruito con Selteco MenuMaker. Dove trovo le istruzioni che dici? E come posso cancellarle? Grazie mille!  :lol:


Guarda, io ho solo un po' di conoscenze dilettanti e autodidatte, quindi prendi le mie indicazioni con "le molle" :-)

Per quanto riguarda lo script in javascript, il problema nasce dalla prima riga
Codice: [Seleziona]

var bBrowserOK; bBrowserOK = 0;if(parseFloat(navigator.appVersion)>=4) if(navigator.appName == 'Microsoft Internet Explorer' ) bBrowserOK = 1

Qui si controlla se la variabile "navigator.appName" è quella di IE altrimenti la variabile di controllo bBrowserOK rimane uguale a 0 e in pratica il codice successivo non viene eseguito.
Un modo semplice per fare eseguire il codice anche su Firefox/Mozilla/Netscape è cambiarla in
Codice: [Seleziona]

var bBrowserOK; bBrowserOK = 0;if(parseFloat(navigator.appVersion)>=4) if(navigator.appName == 'Microsoft Internet Explorer' || navigator.appName == 'Netscape' ) bBrowserOK = 1

Così però rimangono fuori altri browser, soprattutto Opera, ma anche Konqueror, che sono quasi sicuro potrebbero eseguire il codice.
Solo che non posso fare la prova...dovresti informarti in Rete, comunque il principio è lo stesso.
Volendo fare le cose fatte per benino, potresti anche fare un altro cambiamento sullo script, e cioè modificare questa riga
Codice: [Seleziona]

if(SMM17252864) SMM17252864.style.color = '#F9F4F7';WSIHMID17254384('SMM17252816','organizzatori','organizzatori.htm','SMM17252912','','_self');

in
Codice: [Seleziona]

if(document.getElementById("SMM17252864")) document.getElementById("SMM17252864").style.color = '#F9F4F7';WSIHMID17254384('SMM17252816','organizzatori','organizzatori.htm','SMM17252912','','_self');

Lo stesso dovresti fare per tutte le righe con la stessa struttura, cioè quelle che iniziano con if(SMM172...) SMM172.... , a SMM172... devi sostituire document.getElementById("SMM172....") nell if e nell'istruzione immediatamente successiva.
Questo per aderire in pieno allo standard w3c.

C'è poi un altro problema da risolvere per fare funzionare i menù pure su Firefox: nel codice html della pagina, risulta esserci un link a http://www.arci.it/mantova/ sulla barra rossa che contiene i menù. Questo link crea problemi, perchè va a interferire su quelli dei menù a tendina: non so come si può risolvere, io ti consiglieri di toglierlo da lì e spostarlo, anche perchè tra l'altro così non ha molto senso, dato che non si vede.
Con queste modifiche qui, mi sembra che il codice funzioni anche su Firefox.
Ti invito però a fare delle prove tu stesso per sicurezza, magari anche con altri browser.
Ciao, Paolo

Offline facco

  • Post: 21
menu a tendina con javascript
« Risposta #6 il: 16 Marzo 2005 08:43:18 »
Grazie mille!!!
Troppo gentile. Studierò attentamente i tuoi consigli, sperando di venirne fuori (sono un pò praticone, e lavorare in codice non è il mio forte: uso FrontPage).
Un'ultima domanda: secondo te ci sarebbe un software su piattaforma Linux equivalente a FrontPage, in maniera da abbandonare una volta per tutte Windows? O dovrei comunque saperne di più sulla programmazione, per la quale sono molto a digiuno? Grazie ancora e CIAO!
                                                                          Facco

Offline klades

  • Moderatore
  • Post: 5788
    • http://www.nic-nac-project.org/~kaosmos
menu a tendina con javascript
« Risposta #7 il: 16 Marzo 2005 11:11:23 »
Citazione da: facco

Troppo gentile. Studierò attentamente i tuoi consigli, sperando di venirne fuori (sono un pò praticone, e lavorare in codice non è il mio forte: uso FrontPage).


Visto che ci metti le mani, fai questa semplice prova, metti al posto di questo pezzo
Codice: [Seleziona]

var bBrowserOK; bBrowserOK = 0;if(parseFloat(navigator.appVersion)>=4) if(navigator.appName == 'Microsoft Internet Explorer' || navigator.appName == 'Netscape' ) bBrowserOK = 1

questo molto più semplice:
Codice: [Seleziona]

var bBrowserOK; bBrowserOK = 1;

Secondo me con quel codice, non ha più molto senso fare quel test sul browser, perchè mi sembra che sia leggibile da tutti i browser in uso.
Però dovresti sempre fare qualche prova eh :-)

Citazione da: facco
Un'ultima domanda: secondo te ci sarebbe un software su piattaforma Linux equivalente a FrontPage, in maniera da abbandonare una volta per tutte Windows? O dovrei comunque saperne di più sulla programmazione, per la quale sono molto a digiuno?


L'unico editor html visuale per linux è NVU.
Ci sono poi molti ottimi editor html non visuali, BlueFish e Quanta tanto per fare due nomi.
A mio avviso comunque, a prescindere dal software che usi, se vuoi trafficare un po'  nel web ti conviene imparare un po' di html, di css  e di Javascript, sono linguaggi piuttosto semplici, soprattutto il primo.
Questo perchè anche se ti servi di un software per creare il codice, qualche limatura o personalizzazione a mano  ti servirà sempre.
E poi alla lunga secondo è vantaggioso, anche in termini di tempo.
Ciao, Paolo

Offline facco

  • Post: 21
menu a tendina con javascript
« Risposta #8 il: 16 Marzo 2005 11:53:25 »
FUNZIONA!!! Mi hai salvato!
Adesso sto scaricando NVU e lo proverò senz'altro. Voglio disintossicarmi dalla Microsoft, visto gli effetti di dipendenza che da... E Mozilla mi sta veramente e aiutando parecchio.
Grazie a tutti! (prometto che cercherò di impegnarmi di più con l'html).

0 Utenti e 1 Visitatore stanno visualizzando questo topic.