Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    25

    SCRIPT display:none & display:block su IE7 funziona, su FireFox no.... :(

    Ciao ragas..... ecco il codice del mio script (riporto le tre sezioni importanti, anche se il css è su file esterno..):

    codice:
    <script type="text/javascript">
    function ShowHide(id){
    	if(document.getElementById){
    		element=document.getElementById(id);
    		if(element.style.display=="none"){
    			element.style.display="block";
    		}
    		else{
    			element.style.display="none";
    		}
    	}
    }
    </script>
    
    
    <style type="text/css">
    .menuleft {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	color: #000033;
    	font-weight: bold;
    	font-size: 12px;
    	background-color: #FFFFFF;
    	height: 25px;
    	cursor: default;
    	vertical-align: middle;
    	text-align: center;
    }
    .menuleftexp {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	color: #000000;
    	font-weight: bold;
    	font-size: 12px;
    	background-color: #66CCFF;
    	height: 25px;
    	cursor: default;
    	vertical-align: middle;
    	text-align: center;
    }
    .trhide {
    	display: none;
    }
    </style>
    
    
    <html>
    <table width="100%" border="0" cellspacing="2" cellpadding="0">
      <tr>
        <td class="menuleft" onclick="ShowHide('menu1');">menu1</td>
      </tr>
      <tr class="trhide" id="menu1">
        <td class="menuleftexp">sottomenu1</td>
      </tr>
      <tr>
        <td class="menuleft" onclick="ShowHide('menu2');">menu2</td>
      </tr>
      <tr class="trhide" id="menu2">
        <td class="menuleftexp">sottomenu2</td>
      </tr>
      <tr>
        <td class="menuleft" onclick="ShowHide('menu3');">menu3</td>
      </tr>
      <tr class="trhide" id="menu3">
        <td class="menuleftexp">sottomenu3</td>
      </tr>
      <tr>
        <td class="menuleft" onclick="ShowHide('menu4');">menu4</td>
      </tr>
      <tr class="trhide" id="menu4">
        <td class="menuleftexp">sottomenu4</td>
      </tr>
    </table>
    </html>
    Allora, su IE7 funziona benone, anche se appena aperta la pagina (2 frames, il menù è nel frameleft...) al primo click non succede NULLA, dal secondo in poi il menù appare e scompare regolarmente ad ogni pressione... Questo tutte le volte che si clicca un menu diverso.. Come mai? :master:

    Su Firefox invece ha comunque il problema del primo click che non fa nulla.. ma successivamente ad ogni apparizione e sparizione mi aumenta lo spazio vuoto con i menù che stanno sotto... In pratica è un menù a discesa messo in verticale, quando clicchi sul menu 1 gli altri si spostano in basso e appare il sottomenu del menu 1 tra il menu 1 e gli altri...
    Ad ogni sparizione i successivi menu non ritornano al loro posto iniziale, ma rimangono dove sono, e al click successivo si spostano più giù... dopo 10 cicli sono a metà pagina!!!
    Oltretutto anche la forma dei sottomenu che appaiono è sbagliata, tiene solo metà colonna.... non capisco! Help me, please!

  2. #2
    Ciao,
    prova a non assegnare 'block' ma semplicemente una stringa vuota:

    element.style.display= (element.style.display=="none") ? "" : "none";

    io faccio cosi,
    puoi dare un'occhiata al mio menu su http://mirkoagrati.110mb.com/articoli.php

    Fammi sapere
    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  3. #3
    Sposto su Javascript
    FEDERIX.IT - [Pillola] GRAFICA DEI FORM

    ...ho ancora quella forza che ti serve, quando dici "Si comincia!"

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    problema gia' trattato in precedenza
    http://forum.html.it/forum/showthrea...74#post9554774

    per i browser aderenti agli standard il display da settare per tabelle o parti di esse non e' block
    in questo caso va settato a table-row
    http://www.w3.org/TR/CSS21/visuren.html#display-prop

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.