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

    Controllo risoluzione e passaggio variabili

    Ciao a tutti!
    Scusate, non sono molto pratica di javascript, ma sto tentando di fare in modo che, a seconda della risoluzione, mi vengano caricati il foglio di stile e le immagini appropriate.
    Ho messo le 2 variabili che mi servono (risoluzione e css) in un form invisibile che passa i valori da una pagina all'altra.
    Alla prima pagina imposto di default i valori per 1024x768, ma poi controllo la risoluzione ed eventualmente risetto i valori del form.
    codice:
    <script language="JavaScript">
    <!-- 
    function checkRes() {
    f = document.formStile
    if (screen.width < 1024 || f.res.value == "1024") {
    f.css.value = "style800.css";
    f.res.value = "800";
    f.action = "home.asp";
    f.submit();
    }
    }
    // -->
    </script>
    al Body poi dò i comportamenti:
    onLoad="javascript:checkRes();" onUnload="javascript:formStile.submit();"

    alla form l'action "javascript:window.location.href();"

    e qui viene il bello...
    se tolgo il comportamento onLoad, non succede un bel nulla, ma se lo metto mi va in loop...
    immagino un banale errore di sintassi...
    o un return di meno...
    ma javascript lo conosco troppo poco...
    Grazie!

  2. #2
    Il loop l'ho tolto scrivendo
    if (screen.width < 1024 || f.res.value = "1024")
    con un solo uguale...
    ma non mi funziona lo stesso... (

  3. #3
    Ho provato a fare un controllo mettendo un semplice
    document.write("risoluzione schermo:" + screen.width +" px");
    nel corpo del testo, ma non mi fa nulla... (

    perchè?!?

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    se parte degli script li hai copiati dal forum e ti trovi con la parola "javascript" scritta separata anche nei tuoi sorgenti, comincia con il sistemare quello.

    == è giusto, serve a fare controlli, "=" singolo serve a fare assegnazioni, per cui, rimetti a posto quello.

    In seconda battuta, metti online la pagina con gli script e posta il link, se la cosa nel frattempo non si è risolta.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    OK! Grazie...
    Ora vede che la risoluzione è 800x600, non va in loop, ma non mi cambia i valori...
    Purtroppo lo spazio me lo stanno attivando ora, ma ti posto lo script necessario:
    codice:
    <% 
    css = "style.css"
    path = "1024"
    If Request.Form() <> "" Then
    	css = Request.Form("css")
    	path = Request.Form("res")
    End If 
    %>
    dentro al tag head:
    codice:
    <script language="JavaScript" type="text/javascript">
    <!-- 
    f = document.formStile;
    var w = screen.width;
    
    function checkRes() {
    if (w < 1024 || f.res.value == "1024") {
    f.css.value = "style800.css";
    f.res.value = "800";
    f.action = "home.asp";
    f.submit();
    };
    }
    // -->
    </script>
    dentro al tag Body:
    codice:
    <body style="background-image: url(images/<%= path %>/<%= strSez %>/bk_1.jpg);" id="servizi" onLoad="javascript:checkRes();">
    <form action="javascript:window.location.href();" method="post" name="formStile" id="formStile" style="display: none;">
      <input name="css" type="hidden" id="css" value="<%= css %>">
    	<input name="res" type="hidden" id="res" value="<%= path %>">
    </form>
    Grazie e mille per l'aiuto!

    PS: javascript è scritto attaccato e non so perchè qui lo stacchi...

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    La roba dentro
    codice:
    <%
    %>
    è asp? Perché non ho nessun server a tiro che me lo interpreti... aiuteresti tutti se postassi il sorgente interpretato (ossia quello che prendi dal browser)
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    sì, è asp...
    questo è il codice generato:
    codice:
    <body style="background-image: url(images/1024/home/bk_1.jpg);" id="home" onLoad="javascript:checkRes();return true;">
    <form action="javascript:window.location.href();" method="post" name="formStile" id="formStile" style="display: none;">
      <input name="css" type="hidden" id="css" value="style.css">
    	<input name="res" type="hidden" id="res" value="1024">
    
    </form>

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Ahem... prova così:

    codice:
    <script language="JavaScript" type="text/javascript">
    <!-- 
    
    
    function checkRes() {
    f = document.formStile;
    var w = screen.width;
    if (w < 1024 || f.res.value == "1024") {
    f.css.value = "style800.css";
    f.res.value = "800";
    f.action = "home.asp";
    f.submit();
    };
    }
    // -->
    </script>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Ecco scoperto cosa lo mandava in palla!!!
    rimettendo dentro i valori, si impalla, ma alla fine, quando annullo e risalvo, trova la risoluzione giusta

    non so che dire...

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    cioè adesso funziona? magari era un problema di file in cache, non ne ho idea.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.