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

    asp preload con javascript

    Buonasera,
    uso questo script per ottenere un preload delle mie pagine asp.
    Funziona correttamente con ie non funziona affatto con mozilla ed opera.

    Codice PHP:
    ...
    <
    script type="text/javascript">
    var 
    qst=location.search.substr(1);
    var 
    dati = new Array()
    dati=qst.split("&");
    var 
    dato1 dati[0].substr(dati[0].indexOf("=")+1);
    var 
    dato2 dati[1].substr(dati[1].indexOf("=")+1);
    var 
    dato3 dati[2].substr(dati[2].indexOf("=")+1);
    var 
    dato4 dati[3].substr(dati[3].indexOf("=")+1);
    var 
    dato5 dati[4].substr(dati[4].indexOf("=")+1);
    var 
    dato6 dati[5].substr(dati[5].indexOf("=")+1);
    var 
    dato7 dati[6].substr(dati[6].indexOf("=")+1);
    var 
    dato8 dati[7].substr(dati[7].indexOf("=")+1);
    var 
    dato9 dati[8].substr(dati[8].indexOf("=")+1);
    var 
    dato10 dati[9].substr(dati[9].indexOf("=")+1);
    var 
    dato11 dati[10].substr(dati[10].indexOf("=")+1);

    function 
    Is() { 
        
    agent  navigator.userAgent.toLowerCase(); 
        
    this.major parseInt(navigator.appVersion); 
        
    this.minor parseFloat(navigator.appVersion); 
         
    this.ns = ((agent.indexOf('mozilla') != -1) &&  
              (
    agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1) && 
             (
    agent.indexOf('opera') == -1) && 
             (
    agent.indexOf('webtv') == -1));     
        
    this.ns2   = (this.ns && (this.major      ==    3)); 
        
    this.ns3   = (this.ns && (this.major      ==    3)); 
        
    this.ns4   = (this.ns && (this.major      ==    4)); 
        
    this.ns6   = (this.ns && (this.major      >=    5)); 
        
    this.ie    = (agent.indexOf("msie")       !=   -1); 
        
    this.ie3   = (this.ie && (this.major      4)); 
        
    this.ie4   = (this.ie && (this.major      ==    4) && (agent.indexOf("msie 5.0")   ==   -1)); 
        
    this.ie5   = (this.ie && (this.major      ==    4) && (agent.indexOf("msie 5.0")   !=   -1)); 
        
    this.ieX = (this.ie && !this.ie3 && !this.ie4);  


    var 
    is = new Is(); 

    var 
    url "Programma-cerca-immobile.asp?tipologia="+dato1+"&vendita="+dato2+"&fitto="+dato3+"&provincia="+dato4+"&estensioneMin="+dato5+"&estensioneMax="+dato6+"&valoreMin="+dato7+"&valoreMax="+dato8+"&ordinaper="+dato9+"&ordinamento="+dato10+"&page="+dato11

    </script> 

    </head> 

    <body onLoad="location.href = url;">
    ... 
    tutti i valori passati tramite querystring (var url) risultano nulli se non si usa ie.

    Grazie
    Luca

  2. #2
    posto lo script completo:

    Codice PHP:
    <html
    <
    head
    <
    title>Preloading asp pages</title

    <
    script type="text/javascript">
    var 
    qst=location.search.substr(1);
    var 
    dati = new Array()
    dati=qst.split("&");
    var 
    dato1 dati[0].substr(dati[0].indexOf("=")+1);
    var 
    dato2 dati[1].substr(dati[1].indexOf("=")+1);
    var 
    dato3 dati[2].substr(dati[2].indexOf("=")+1);
    var 
    dato4 dati[3].substr(dati[3].indexOf("=")+1);
    var 
    dato5 dati[4].substr(dati[4].indexOf("=")+1);
    var 
    dato6 dati[5].substr(dati[5].indexOf("=")+1);
    var 
    dato7 dati[6].substr(dati[6].indexOf("=")+1);
    var 
    dato8 dati[7].substr(dati[7].indexOf("=")+1);
    var 
    dato9 dati[8].substr(dati[8].indexOf("=")+1);
    var 
    dato10 dati[9].substr(dati[9].indexOf("=")+1);
    var 
    dato11 dati[10].substr(dati[10].indexOf("=")+1);

    function 
    Is() { 
        
    agent  navigator.userAgent.toLowerCase(); 
        
    this.major parseInt(navigator.appVersion); 
        
    this.minor parseFloat(navigator.appVersion); 
         
    this.ns = ((agent.indexOf('mozilla') != -1) &&  
              (
    agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1) && 
             (
    agent.indexOf('opera') == -1) && 
             (
    agent.indexOf('webtv') == -1));     
        
    this.ns2   = (this.ns && (this.major      ==    3)); 
        
    this.ns3   = (this.ns && (this.major      ==    3)); 
        
    this.ns4   = (this.ns && (this.major      ==    4)); 
        
    this.ns6   = (this.ns && (this.major      >=    5)); 
        
    this.ie    = (agent.indexOf("msie")       !=   -1); 
        
    this.ie3   = (this.ie && (this.major      4)); 
        
    this.ie4   = (this.ie && (this.major      ==    4) && (agent.indexOf("msie 5.0")   ==   -1)); 
        
    this.ie5   = (this.ie && (this.major      ==    4) && (agent.indexOf("msie 5.0")   !=   -1)); 
        
    this.ieX = (this.ie && !this.ie3 && !this.ie4);  


    var 
    is = new Is(); 

    var 
    url "Programma-cerca-immobile.asp?tipologia="+dato1+"&vendita="+dato2+"&fitto="+dato3+"&provincia="+dato4+"&estensioneMin="+dato5+"&estensioneMax="+dato6+"&valoreMin="+dato7+"&valoreMax="+dato8+"&ordinaper="+dato9+"&ordinamento="+dato10+"&page="+dato11

    </script> 

    </head> 

    <body onLoad="location.href = url;">
    <table width="720" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="300" align="center" valign="middle">
          

    Caricamento in corso...</p>
          [img]Immagini/loading.gif[/img]
        </td>
      </tr>
    </table>
    <script type="text/javascript"> 
    if (document.layers) 
    document.write('<layer src="' + url + '" visibility="hide"><\/layer>'); 

    else if (document.all || document.getElementById) 
    document.write('<iframe src="' + url + '" style="visibility: hidden; height:3; overflow:hidden;"><\/iframe>'); 

    else location.href = url; 
    </script> 

    </body> 
    </html> 
    il file preload.html viene lanciato dalla funzione javascript 'ricerca'
    Codice PHP:
    function ricerca (ric,pulsric,ris,pulsris,tipologia,provincia,estensioneMin,estensioneMax,valoreMin,valoreMax,tipoordine,ordine) {
        if(
    document.modulo.Vendita.checked) {
            var 
    vendita="True";
        }else {
            var 
    vendita="False";
        }
        if(
    document.modulo.Fitto.checked) {
            var 
    fitto="True";
        }else {
            var 
    fitto="False";
        }
        
    parent.target.location.href=("preload.html?a="+tipologia+"&b="+vendita+"&c="+fitto+"&p="+provincia+"&d="+estensioneMin+"&e="+estensioneMax+"&f="+valoreMin+"&g="+valoreMax+"&h="+tipoordine+"&z="+ordine+"&u=1");
        
    espandi(ricpulsric);
        
    verifica=document.getElementById(ris)
        if (
    verifica.style.display=="none") {
            
    espandi(ris,pulsris);
        }

    Funziona con ie, non con firefox
    che da questo errore:


    Microsoft JET Database Engine error '80040e14'

    Syntax error (missing operator) in query expression 'TipologiaImmobile = '' AND Provincia = '' AND MetriQuadri >= AND MetriQuadri <= AND Prezzo >= AND Prezzo <='.

    (valori passati: null)

  3. #3
    :master:

  4. #4
    codice:
    var qst=window.location.search.substr(1);
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  5. #5
    purtroppo non funziona...

    Secondo me il problema sta nella funzione Is, nel punto

    this.ns = ((agent.indexOf('mozilla') != -1) &&
    (agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1) &&
    (agent.indexOf('opera') == -1) &&
    (agent.indexOf('webtv') == -1));

    Ho provato ad eliminarla completamente insieme alla chiamata ma se lo faccio non funziona nulla...

  6. #6
    ho provato a mettere:
    alert(qst);
    sotto a var qst=location.search.substr(1);

    su ie viene alertata la querystring, su firefox ed opera no


  7. #7
    a me non risulta.
    in questo momento sto usando Firefox
    Se eseguo alert(window.location.search.substr(1)) visualizzo correttamente la querystring.
    Poi ...
    tu metti un :
    codice:
    <body onLoad="location.href = url;">
    e, in un browser serio, pretendi che venga eseguito correttamente codice di una pagina che, appena caricata, ne carica un'altra?
    mmmh, perch&egrave; funzioni IE, lo sa lui!
    Infine:
    La funzione Is() &egrave; moooolto vecchia!
    io la usavo alla fine degli anni 90!
    Al giorno d'oggi non serve praticamente pi&ugrave;
    Cerca 'Browser sniffing' su google, limitando la ricerca alle pagine non pi&ugrave; vecchie di un anno o due..

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  8. #8
    conosci qualche buon script per ottenere un preload delle pagine?

  9. #9
    come mai quando elimino la funzione Is lo script non funziona più?

    E' possibile eliminarla completamente?

    lo script deve fare solo un redirect non vedo a cosa serva.

    P.S.: a me l'alert non funziona, lo script indirizza alla pagina asp ma senza passare i valori

  10. #10
    nessuna dritta?

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.