Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361

    Chrome vs Firefox.. diversa interpretazione del JS

    Cavolo.. ma che casino è?
    se faccio un codice del tipo
    codice:
    var a;
    
    window.onload = function() {
      a = new Array();
    }
    su mozilla funziona, mentre su chrome non trova la variabile (il che vuol dire che esegue prima il window onload e poi il resto dello script, cosa che non ha senso dato che onload parte dopo aver caricato tutta la pagina..)

    come posso risolvere? devo x forza trovare 1 compromesso?

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Da una prova non mi risulta, funziona esattamente alla stessa maniera per entrambi i browser http://webprogetti.it/prova.php
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    intanto grazie per la risposta, comunque è assurdo.. e stavolta non si tratta di "sviste" come il thread precedente.. dichiaro una serie di variabili nell'head del documento.. e subito sotto alle variabili dichiaro alcune funzioni che utilizzerò nel window.onload = function(){}.. su firefox e (stranamente) explorer non mi da problemi.. chrome mi dice che le variabili sono undefined..
    ho fatto anche le seguenti prove:

    ritardare la funzione (all'intendo dell'onload) che richiama le variabili di 5 secondi in modo da essere sicuri che vengano caricate (niente)

    copiare le variabili in un file esterno e includerlo all'interno del documento (ovviamente prima del codice incriminato).. di conseguenza il window.onload deve per forza attivarsi dopo che le variabili sono state caricate.. ma niente nemmeno così!

    l'errore preciso è questo "Uncaught TypeError: Cannot set property '0' of undefined" forse lo interpreto male io.. ma ho fatto delle prove con degli "alert" nel codice e le variabili vengono considerate "undefined"... idee?

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Posta il link alla pagina pubblica
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    è un lavoro.. diciamo.. "top secret".. posso inviarti il link in PM così dai uno sguardo?

  6. #6
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    tra l'altro ho appena provato con i breakpoint su chrome e la dichiarazione viene eseguita (correttamente) prima della funzione.. davvero non capisco..

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da LuckySevenRoX
    è un lavoro.. diciamo.. "top secret".. posso inviarti il link in PM così dai uno sguardo?
    Non faccio consulenze/aiuti privati, attendi altri consigli
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    ultima notizia (scusate il terzo "up" di fila, ma è importante!) è che la cosa diventa sempre + inspiegabile...
    due variabili sono dichiarate nello stesso punto e fanno le stesse identiche cose.. una viene riconosciuta, l'altra no... com'è possibile??
    var a;
    var b;

    window.onload = function() {
    a[0] = new Array();
    b[0] = new Array();
    a[0][0] = new Array();
    b[0][0] = new Array(); ///Errore

    assurdo..

  9. #9
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    codice:
    <script language="javascript">
    
    				var cur_p = new Array(); //Il valore per ogni giocatore di puntata pi� alta per ogni round
    				var status = new Array(); //Lo stato dei giocatori durante la mano. 
    				for (i = 0; i < 10 + 2; i++) {
    					status[i] = new Array();
    					cur_p[i] = new Array();
    				}
    				
    				for (i = 0; i < 10 + 2; i++) {
    					for (a = 0; a < 6; a++) { 
    								status[i][a] = new Array(); 
    								cur_p[i][a] = 0;
    								     							
    					}	
    				}
    </script>
    versione mooolto modificata del codice.. da lo stesso problema anche qui (status[i][a] = new Array(); //errore)

  10. #10
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    RISOLTO

    ovviamente per rimanere nell'assurdo... dato che anche quel semplice script che ho postato poco fa dava errori solo con la variabile status ho provato, per assurdo, a cambiargli nome... e pensate un pò? adesso va... chrome impazzisce per la variabile "status" a quanto pare... evitate di usarla



    (poi ditemi se confermate questo bug o se sono pazzo sta di fatto che adesso funge!)

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.