Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48

    rotazione di vari file compresi i PDF

    Ho questo codice in javascript, che effettua lo slideshow dei file inseriti in una stringa arrPages. Funziona se si inseriscono nell'array file immagine e file html, ma se inserisco un file PDF, quest'ultimo viene visualizzato ma la rotazione dei file si blocca e resta a schermo il file pdf in eterno. Non riesco a capire perchè, qualcuno sa come fare per far visualizzare i file in pdf senza bloccare la rotazione della slideshow?

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Untitled</title>
    <script type="text/javascript">
    var i=0,
    
    arrPages=["http://localhost/prova.jpg","http://localhost/prova.pdf","http://localhost/prova.htm"];
    function changePage(){
    if(!arrPages[i]) i=0;
    document.getElementById("main").src=arrPages[i++];
    }
    </script>
    </head>
    <body>
    <iframe src="about:blank" onload="setTimeout('changePage()',3000)" 
    id="main" width="100%" height="100%"></iframe>
    </body>
    </html>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Perche' un documento pdf non genera l'evento onload.

    Gestisci un timer direttamente nella pagina, a prescindere da cio' che avviene nell'iframe.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Grazieee!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Non riesco assolutamente a venirne a capo. Nel codice seguente effettuo un controllo sul tipo di file presente nell'array. Se è un file htm lo manda a video in una finestra di dimensioni prefissate. Se è un file immagine effettua un resize alle dimensioni prefissate. Se è un file pdf prova a mandare un setInterval, ma il pdf blocca tutto.
    HELP!!!!

    codice:
    <html>
    <head>
    <title>Untitled</title>
    <script type="text/javascript">
    var i=0;
    
    /* In questo punto del codice passivo, il codice attivo "scrive" nell'output html il contenuto dell'array */
    var arrPages=[<% Response.Write(testo_che_contiene_array) %>];
    var stringa=arrPages[i];
    
    function changePage(){
    if(!arrPages[i]) i=0;
    stringa=arrPages[i];
      /*se l'elemento dell'array è un htm esegui queste istruzioni*/
      if (stringa.indexOf("htm")!=-1) {  
      document.getElementById("main").style.width="588";
      document.getElementById("main").style.height="680";
      document.getElementById("main").src=arrPages[i++];
      }
       /*se l'elemento dell'array è un pdf esegui queste istruzioni*/
      if (stringa.indexOf("pdf")!=-1) {   
      document.getElementById("main").style.width="588";
      document.getElementById("main").style.height="680";
      setInterval((document.getElementById("main").src=arrPages[i++]),3000);
      }
       /*se l'elemento dell'array è una immagine esegui queste istruzioni*/
      else{
      var source='[img]'+arrPages[i++]+'[/img]';
      var myframe = document.getElementById("main").contentWindow.document;
      myframe.open();
      myframe.write(source);
      myframe.close(); 
    }
    }
    
    </script>
    </head>
    <body>
     <iframe src="about:blank" onload="setTimeout('changePage()',5000)" id="main" width="100%" height="100%" scrolling="NO" MARGINWIDTH="0"  
    
    MARGINHEIGHT="0">
     </iframe>
    </body>

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    setInterval('document.getElementById("main").src=" '+arrPages[i++]+'"',3000);

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    48
    Per prima cosa un grazie sincero per la pazienza e per le risposte!

    Il setInterval funziona ma quando arrivo al file pdf fa un refresh eterno della stessa pagina, anche se aggiungo il comando clearInterval();
    Se al posto di setInterval metto setTimeout, si blocca la visualizzazione al file pdf.
    Cosa posso fare?

    codice:
      else if (stringa.indexOf("pdf")!=-1) {   
      document.getElementById("main").style.width="588";
      document.getElementById("main").style.height="680";
      setInterval ('document.getElementById("main").src="'+arrPages[i++]+'"',5000);
      clearInterval ();

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.