Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    443

    sovrapposizione layer a select box

    a livello di layout, in MSIE sovrapponendo un layer a una select, questa resta sempre visibile.

    Ci sarebbe una possibilità con Javascript per nascondere la select box nel caso venga sovrapposta da un layer?

    codice:
    <html>
    <head>
    <title>title</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    }
    
    function MM_showHideLayers() { //v6.0
      var i,p,v,obj,args=MM_showHideLayers.arguments;
      for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
        if (obj.style) { obj=obj.style; v=(v=='show')?'visible'v=='hide')?'hidden':v; }
        obj.visibility=v; }
    }
    //-->
    </script>
    </head>
    
    <body>
    <div id="Layer" style="position:absolute; left:34px; top:15px; width:257px; height:36px; z-index:1; background-color: #00FFFF; layer-background-color: #00FFFF; border: 1px none #000000; visibility: hidden;"></div>
    <form name="form1" method="post" action="">
      <select name="select">
        <option value="test">test</option>
      </select>
    </form>
    
    
    mostra layer</p>
    </body>
    </html>

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    443
    Grazie,

    la pagina che mi hai indicato contiene un esempio molto complesso per le mie conoscenze.

    Ho trovato una solzione + semplice su http://dotnetjunkies.com/WebLog/jkin...0/30/2975.aspx
    ed ho addattato il codice:

    codice:
    <html>
    <head>
    <title>title</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
     <script>
      function DivSetVisible(state)
      {
       var DivRef = document.getElementById('PopupDiv');
       var IfrRef = document.getElementById('DivShim');
       if(state)
       {
        DivRef.style.display = "block";
        IfrRef.style.width = DivRef.offsetWidth;
        IfrRef.style.height = DivRef.offsetHeight;
        IfrRef.style.top = DivRef.style.top;
        IfrRef.style.left = DivRef.style.left;
        IfrRef.style.zIndex = DivRef.style.zIndex - 1;
        IfrRef.style.display = "block";
       }
       else
       {
        DivRef.style.display = "none";
        IfrRef.style.display = "none";
       }
      }
     </script>
    </head>
    
    <body onload="DivSetVisible(false)">
    <div id="PopupDiv" style="position:absolute; left:34px; top:15px; width:257px; height:36px; z-index:1; background-color: #00FFFF; layer-background-color: #00FFFF; border: 1px none #000000; visibility: visible;">contenuto layer</div>
    
     <iframe
      id="DivShim"
      src="javascript:false;"
      scrolling="no"
      frameborder="0"
      style="position:absolute; top:0px; left:0px; display:none;">
     </iframe>
    <form name="form1" method="post" action="">
      <select name="select">
        <option value="test">test</option>
      </select>
    </form>
    
    
    mostra layer</p>
    </body>
    </html>

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.