Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
HTML / CSS - Banner chiudibile
Forum - HTML / CSS - Banner chiudibile

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Grubby (Normal User)
Pro


Messaggi: 85
Iscritto: 02/04/2010

Segnala al moderatore
Postato alle 19:10
Sabato, 10/04/2010
Ciao ragazzi
Ho creato un banner pubblicitario che segue lo spostamento delle pagina e vorrei poterlo chiudere con un bottone.

Questo è il codice del mio banner

<!--Banner-->
<div id="divStayTopLeft" style="position:absolute">

<table border="1" width="180" cellspacing="0" cellpadding="0" >
  <tr>
    <td width="100%" bgcolor="#ffffcc" align="center">
      <p align="center"><b><a href="pagina.html" style="text-decoration: none" ><h1><blink>Clicca qui per visitare il mio sito internet!!!</blink><h1></a>
          <input type="button" onclick="self.close()" value="Chiudi" align="right"/>
      </b></td>
  </tr>
</table>
</div>
<script type="text/javascript">

var verticalpos="fromtop"

function JSFX_FloatTopDiv()
{
    var startX = 10,
    startY = 250;
    var ns = (navigator.appName.indexOf("Netscape") != -1);
    var d = document;
    function ml(id)
    {
        var el=d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
        if(d.layers)el.style=el;
        el.sP=function(x,y){this.style.left=x;this.style.top=y;};
        el.x = startX;
        if (verticalpos=="fromtop")
        el.y = startY;
        else{
        el.y = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
        el.y -= startY;
        }
        return el;
    }
    window.stayTopLeft=function()
    {
        if (verticalpos=="fromtop"){
        var pY = ns ? pageYOffset : document.body.scrollTop;
        ftlObj.y += (pY + startY - ftlObj.y)/8;
        }
        else{
        var pY = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
        ftlObj.y += (pY - startY - ftlObj.y)/8;
        }
        ftlObj.sP(ftlObj.x, ftlObj.y);
        setTimeout("stayTopLeft()", 10);
    }
    ftlObj = ml("divStayTopLeft");
    stayTopLeft();
}
JSFX_FloatTopDiv();
// end  -->
</script>


Il bottone che ho creato non produce nessun effetto:)
Avete qualche idea?
Grazie in anticipo

PM Quote
Avatar
XBarboX (Member)
Guru


Messaggi: 945
Iscritto: 31/12/2008

Segnala al moderatore
Postato alle 20:57
Sabato, 10/04/2010
credo che basti mettere nell'evento on click la width del div uguale a 0. così si chiude

PM Quote
Avatar
Grubby (Normal User)
Pro


Messaggi: 85
Iscritto: 02/04/2010

Segnala al moderatore
Postato alle 12:38
Domenica, 11/04/2010
Come faccio a ridimensionare il div con l'evento onclick?

PM Quote
Avatar
XBarboX (Member)
Guru


Messaggi: 945
Iscritto: 31/12/2008

Segnala al moderatore
Postato alle 13:04
Domenica, 11/04/2010
document.getelementbyid('id del tuo div').style.width = 0

PM Quote
Avatar
Grubby (Normal User)
Pro


Messaggi: 85
Iscritto: 02/04/2010

Segnala al moderatore
Postato alle 16:18
Domenica, 11/04/2010
Mmmm.....
Non funziona:asd:

PM Quote
Avatar
XBarboX (Member)
Guru


Messaggi: 945
Iscritto: 31/12/2008

Segnala al moderatore
Postato alle 16:59
Domenica, 11/04/2010
ecco il codice completo. Te l'ho corretto.
Codice sorgente - presumibilmente Delphi

  1. <!--Banner-->
  2. <div id="divStayTopLeft" style="position:absolute; overflow: hidden;">
  3.  
  4. <table border="1" width="180" cellspacing="0" cellpadding="0" >
  5.   <tr>
  6.     <td width="100%" bgcolor="#ffffcc" align="center">
  7.       <p align="center"><b><a href="pagina.html" style="text-decoration: none" ><h1><blink>Clicca qui per visitare il mio sito internet!!!</blink><h1></a>
  8.           <input type="button" onclick="document.getElementById('divStayTopLeft').style.width='0px'" value="Chiudi" align="right">
  9.       </b></td>
  10.   </tr>
  11. </table>
  12. </div>
  13. <script type="text/javascript">
  14.  
  15. var verticalpos="fromtop"
  16.  
  17. function JSFX_FloatTopDiv()
  18. {
  19.     var startX = 10,
  20.     startY = 250;
  21.     var ns = (navigator.appName.indexOf("Netscape") != -1);
  22.     var d = document;
  23.     function ml(id)
  24.     {
  25.         var el=d.getElementById?d.getElementById(id).all?d.all[id].layers[id];
  26.         if(d.layers)el.style=el;
  27.         el.sP=function(x,y){this.style.left=x;this.style.top=y;};
  28.         el.x = startX;
  29.         if (verticalpos=="fromtop")
  30.         el.y = startY;
  31.         else{
  32.         el.y = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
  33.         el.y -= startY;
  34.         }
  35.         return el;
  36.     }
  37.     window.stayTopLeft=function()
  38.     {
  39.         if (verticalpos=="fromtop"){
  40.         var pY = ns ? pageYOffset : document.body.scrollTop;
  41.         ftlObj.y += (pY + startY - ftlObj.y)/8;
  42.         }
  43.         else{
  44.         var pY = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
  45.         ftlObj.y += (pY - startY - ftlObj.y)/8;
  46.         }
  47.         ftlObj.sP(ftlObj.x, ftlObj.y);
  48.         setTimeout("stayTopLeft()", 10);
  49.     }
  50.     ftlObj = ml("divStayTopLeft");
  51.     stayTopLeft();
  52. }
  53. JSFX_FloatTopDiv();
  54. // end  -->
  55. </script>


PM Quote
Avatar
XBarboX (Member)
Guru


Messaggi: 945
Iscritto: 31/12/2008

Segnala al moderatore
Postato alle 17:00
Domenica, 11/04/2010
ecco il codice completo. Te l'ho corretto.
Codice sorgente - presumibilmente Delphi

  1. <!--Banner-->
  2. <div id="divStayTopLeft" style="position:absolute; overflow: hidden;">
  3.  
  4. <table border="1" width="180" cellspacing="0" cellpadding="0" >
  5.   <tr>
  6.     <td width="100%" bgcolor="#ffffcc" align="center">
  7.       <p align="center"><b><a href="pagina.html" style="text-decoration: none" ><h1><blink>Clicca qui per visitare il mio sito internet!!!</blink><h1></a>
  8.           <input type="button" onclick="document.getElementById('divStayTopLeft').style.width='0px'" value="Chiudi" align="right">
  9.       </b></td>
  10.   </tr>
  11. </table>
  12. </div>
  13. <script type="text/javascript">
  14.  
  15. var verticalpos="fromtop"
  16.  
  17. function JSFX_FloatTopDiv()
  18. {
  19.     var startX = 10,
  20.     startY = 250;
  21.     var ns = (navigator.appName.indexOf("Netscape") != -1);
  22.     var d = document;
  23.     function ml(id)
  24.     {
  25.         var el=d.getElementById?d.getElementById(id).all?d.all[id].layers[id];
  26.         if(d.layers)el.style=el;
  27.         el.sP=function(x,y){this.style.left=x;this.style.top=y;};
  28.         el.x = startX;
  29.         if (verticalpos=="fromtop")
  30.         el.y = startY;
  31.         else{
  32.         el.y = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
  33.         el.y -= startY;
  34.         }
  35.         return el;
  36.     }
  37.     window.stayTopLeft=function()
  38.     {
  39.         if (verticalpos=="fromtop"){
  40.         var pY = ns ? pageYOffset : document.body.scrollTop;
  41.         ftlObj.y += (pY + startY - ftlObj.y)/8;
  42.         }
  43.         else{
  44.         var pY = ns ? pageYOffset + innerHeight : document.body.scrollTop + document.body.clientHeight;
  45.         ftlObj.y += (pY - startY - ftlObj.y)/8;
  46.         }
  47.         ftlObj.sP(ftlObj.x, ftlObj.y);
  48.         setTimeout("stayTopLeft()", 10);
  49.     }
  50.     ftlObj = ml("divStayTopLeft");
  51.     stayTopLeft();
  52. }
  53. JSFX_FloatTopDiv();
  54. // end  -->
  55. </script>


PM Quote
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Segnala al moderatore
Postato alle 19:38
Domenica, 11/04/2010
ma impostare la proprietà css display a hidden non era più semplice?

PM Quote
Avatar
Grubby (Normal User)
Pro


Messaggi: 85
Iscritto: 02/04/2010

Segnala al moderatore
Postato alle 23:56
Domenica, 11/04/2010
Ho risolto grazie ragazzi...
XBarboX, il codice che mi hai riscritto consente la chiusura del banner ma lo ancora in basso a sinistra, mentre il vecchio codice lo faceva muovere in base ai miei spostamneti nella pagina.
Grazie mille comunque

Mte90
Mi piacerebbe comunque capire la tua soluzione...
Dove la imposto display="hidden"?
Grazie ancora:D

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo