Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Problema con popup

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    83

    Problema con popup

    Ciao a tutti non sono riuscito a trovare niente di utile, ho questo problema.
    ho una pagina principale index.htm con questo codice:

    <script type="text/javascript">
    <!--
    var stile = "width=%, height=%";
    function Popup(apri) {
    window.open(apri, "", stile);
    }
    //-->
    </script>

    un link su questa pagina:

    dettaglio
    e fino a qui tutto ok..
    ora nel popup.htm c'è una tabella, vorrei che questo si aprisse come grandezza dinamicamente alla tabella!!!

    Come posso fare?
    Ciao e Grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ciao autosys,
    la soluzione nel forum ci sarebbe, a cercare bene

    chiaramente scordati di poter conoscere quelle misure prima di aver aperto la popup

    puoi fare così
    - apri a dimensioni note (al di sotto di 100*100px non puoi andare)

    nel documento in popup
    - azzera i margini del documento
    - assegna un id alla tabella in questione
    - richiama onload sul body (e, se vuoi, anche onresize) una funzione tipo questa
    codice:
    function ripos(){
    	var obj=document.getElementById('id_tabella')
    	var w=obj.offsetWidth+12
    	var h=obj.offsetHeight+30
    	var sW=screen.availWidth
    	var sH=screen.availHeight
    	self.resizeTo((w<sW?w:sW),(h<sH?h:sH))
    	self.moveTo((w<sW?(sW-w)/2:0),(h<sH?(sH-h)/2:0))
    }
    12 e 30 sono lo spazio occupato da telaio e barra del titolo,
    supponendo che tu apra la popup priva delle barre dei menù,
    variano un po' da browser a browser
    (volendo si possono ricavare anche dinamicamente ma non volevo renderti lo script + complesso)

    se non ti fosse chiaro qualche passaggio ci risentiamo

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    83
    Potresti gentilmente farmi vedere la struttura che devo applicare, conosco poco javascritp... la fuction dove la inserisco dentro <scripts>?

    Ciao e Grazie
    Originariamente inviato da Xinod
    ciao autosys,
    la soluzione nel forum ci sarebbe, a cercare bene

    chiaramente scordati di poter conoscere quelle misure prima di aver aperto la popup

    puoi fare così
    - apri a dimensioni note (al di sotto di 100*100px non puoi andare)

    nel documento in popup
    - azzera i margini del documento
    - assegna un id alla tabella in questione
    - richiama onload sul body (e, se vuoi, anche onresize) una funzione tipo questa
    codice:
    function ripos(){
    	var obj=document.getElementById('id_tabella')
    	var w=obj.offsetWidth+12
    	var h=obj.offsetHeight+30
    	var sW=screen.availWidth
    	var sH=screen.availHeight
    	self.resizeTo((w<sW?w:sW),(h<sH?h:sH))
    	self.moveTo((w<sW?(sW-w)/2:0),(h<sH?(sH-h)/2:0))
    }
    12 e 30 sono lo spazio occupato da telaio e barra del titolo,
    supponendo che tu apra la popup priva delle barre dei menù,
    variano un po' da browser a browser
    (volendo si possono ricavare anche dinamicamente ma non volevo renderti lo script + complesso)

    se non ti fosse chiaro qualche passaggio ci risentiamo

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    codice:
    <html>
    <head>
    <title></title>
    <style type="text/css">
    body {
    	margin:0px;
    }
    </style>
    <script type="text/javascript">
    function ripos(){
    	var obj=document.getElementById('id_tabella')
    	var w=obj.offsetWidth+12
    	var h=obj.offsetHeight+30
    	var sW=screen.availWidth
    	var sH=screen.availHeight
    	self.resizeTo((w<sW?w:sW),(h<sH?h:sH))
    	self.moveTo((w<sW?(sW-w)/2:0),(h<sH?(sH-h)/2:0))
    }
    </script>
    </head>
    <body onload="ripos()" onresize="ripos()">
    <table id="id_tabella" width="400" cellpadding="5" cellspacing="1" border="1">
    <tbody>
    <tr><td>a</td><td>b</td></tr>
    <tr><td>c</td><td>d</td></tr>
    <tr><td>e</td><td>f</td></tr>
    <tr><td>g</td><td>h</td></tr>
    <tr><td>i</td><td>l</td></tr>
    <tr><td>m</td><td>n</td></tr>
    </tbody>
    </table>
    </body>
    </html>
    ecco l' esempio

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.