Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    problema con pagina popup

    salve a tutti, ho un piccolo problema con una pagina che si apre con evento onload sul body;
    In pratica tramite uno script, ho settato le dimensioni della finestra che si apre, si sposta al centro dello schermo e si chiude dopo un intervallo di tempo, solo che tali dimensioni vengono rispettate con FF e IE9, mentre con chrome la finestra che si apre e più piccola delle dimensini settate e quindi appaiono le barre di scorrimento laterali...
    come è possibile risolvere?

    questo lo script

    codice:
    <!-- Beginning of JavaScript   
    
    var popwindow 
    var popwindowwidth=300   /** larghexxa finestra **/ 
    var popwindowheight=180   /** altezza della finestra **/ 
    var popwindowtop=250   /** distanza in pixel da top **/ 
    var popwindowURL="contattami.html" 
    var waitingtime=8   /** secondi di attesa prima della chiusura **/ 
    var pause=20 
    var step=40 
    var popwindowleft=-popwindowwidth-50 
    var marginright=1600   /** senza il valore la funzione non va su firefox,ma solo so explorer **/ var pagecenter 
    var timer   
    
    waitingtime= waitingtime*1000  
    
    function showWindow() { 
    popwindow = window.open(popwindowURL, "popwindow", "toolbar=no,location=no,status=no,width="+popwindowwidth+",height="+popwindowheight+",top="+popwindowtop+",left="+(-popwindowwidth)+""); 	  
    
    if (document.all) { 
    marginright = screen.width+50 	
    } 	  
    
    if (document.layers) { 
    marginright = screen.width+50 
    } 	
    
    pagecenter=Math.floor(marginright/2)-Math.floor(popwindowwidth/2) 	 
    
    movewindow() 
    }  
    
    function movewindow() {   
    if (popwindowleft<=pagecenter) {popwindow.moveTo(popwindowleft,popwindowtop) 	popwindowleft+=step 	
    timer= setTimeout("movewindow()",pause) 		} 		 else { clearTimeout(timer) timer= setTimeout("movewindow2()",waitingtime) 		
    } 
    }  
    
    function movewindow2() { 		 
    if (popwindowleft<=marginright) {popwindow.moveTo(popwindowleft,popwindowtop) 	popwindowleft+=step 	
    timer= setTimeout("movewindow2()",pause) 		
    } 		 
    else { 
    clearTimeout(timer)  
    popwindow.close() 
    } 
    }  
    // -->
    cosa devo modificare per sistemare?
    Thanks

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Dando per scontato che sistemerai le dimensioni, puo settere lo scrollbar non visibile con l'attributo scrollbars=no

    http://www.w3schools.com/jsref/met_win_open.asp

  3. #3

    fatto, ma....

    ho modificato e aggiunto, giustemante, la specifica scrollbars=no in questo modo

    codice:
    popwindow = window.open(popwindowURL, "popwindow", "toolbar=no,location=no,scrollbars=no,status=no,width="+popwindowwidth+",height="+popwindowheight+",top="+popwindowtop+",left="+(-popwindowwidth)+"");
    ma continua a mostrare le barre di scorrimento
    perchè mai?

    e poi cosa intendi per modificare le dimensioni? di cosa? dove?

  4. #4
    qualche suggerimento? la modifica consigliata da m4rko80, ed eseguita, purtroppo non ha sistemato il problema
    Peraltro sempre su consiglio di m4rko80 di modificare le dimensioni, non so proprio a cosa facesse riferimento....
    Grazie

  5. #5
    Qualcuno che abbia una soluzione al mio problema (credo banale)....

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Devi fare delle prove io inizierei con lo "smontare" tutto verificando che con tutti i browser le dimensioni impostate sia corrette, per poi passare alla centratura, per ultimo lo spostamento. Considera che non c'è uno standard per le dimensioni dello schermo e ogni browser le "rileva" a modo suo, per esempio questi due if:
    codice:
    if (document.all) { 
    marginright = screen.width+50 	
    } 	  
    if (document.layers) { 
    marginright = screen.width+50 
    }
    a cosa servono visto che sono uguali? In oltre se il browser non riconosce .all e .layers la variabile non viene settata.
    Consiglio mi sembra uno script datato, io opterei per cercare (su google) qualcosa di più recente in jquery che soffre meno dei "capricci" dei browser
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    ciao Andrea,
    centratura e spostamento funzionano, l'unica cosa sono le dimensioni della finestra che si apre all'evento onload, dove con chrome la finestra che si apre non ha le dimensioni impostate ma è più piccola e mostra le barre di scorrimento.
    Con tutti gli altri browser provati (IE9 FF10 OPERA) le dimensioni della finestra sono corrette.

    Ho anche provato come suggerito da m4rko80 a modificare così

    codice:
    var popwindowwidth=350   /** larghexxa finestra **/  
    var popwindowheight=220   /** altezza della finestra **/
    ma poi le dimensioni della finestra sono troppo grandi per contenere l'immagine che c'è dentro.


    Comunque grazie per la risposta...
    P.S. già con javascript ho un sacco di problemi, con Jquery credo di non saper proprio da dove iniziare...
    Consigli?

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Studiare, cercare, documentarsi, etc... tali problemi sono "rognosi" ci vuole tanta pazienza e letture, prove, test, verifiche auguri.

    P.S. Comunque prova a cambiare popwindow o la variabile o il nome della popup non si sa mai
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    ho provato a togliere uno dei due lementi che mi hai suggerito


    codice:
    if (document.all) { 
    marginright = screen.width+50 	
    } 	
      
    if (document.layers) { 
    marginright = screen.width+50 
    }
    sia togliendo uno o l'altro if, lo script funziona ugualmente come prima su tutti i browser, quindi lasciare uno o l'altro o entrambi non mi risolve il problema...

  10. #10
    Devi impostare un overflow:hidden; (CSS) al body della pagina contattami.html
    edit: sempre coi CSS, imposta anche una height per il body
    P.S.: nessuno usa più i popup, prova ad usare "Fancybox"

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 © 2024 vBulletin Solutions, Inc. All rights reserved.