- Non sto facendo un grosso pezzo di calcolo in JS.
Tutto funziona bene su iPad iOS 5 in Safari fino a quando ho aggiunto questo codice:L'esecuzione di JavaScript ha superato il timeout
var watchID = navigator.geolocation.watchPosition(updatePos,locationError,{maximumAge: 10000, frequency: 60000, enableHighAccuracy: true, timeout: 1000}); function updatePos(position) { if (position.coords.accuracy < accuracyThreshold) { $.post(websiteRoot + '/ReportDeviceLocation?rand=' + (Math.random() * Math.random()) + '&longitude=' + position.coords.longitude + '&latitude=' +position.coords.latitude); } else { console.debug("Location data is not accurate enough. Location not updated."); } }
Poi la pagina web ha lavorato per circa 4 minuti e ottengo questo errore: l'esecuzione
JavaScript superato tempo scaduto.
Quindi non caricare JavaScript. Nessuno dei messaggi di debug che ho inserito nel file my.js verrebbe stampato. Solo l'errore sopra.
L'errore persiste anche dopo aver lasciato la pagina che ha generato questo errore e aperto altre pagine Web con lo stesso dominio.
Ho provato try e catch, ho utilizzato la funzione setTimeout, ma nessuno dei due mi ha fornito la fonte dell'errore né risolto il problema.
Non so quale sia il problema. Mi sta bruciando per tutto il giorno e mi brucierà per il fine settimana.
Ho lo stesso problema con siti diversi. Uccidere tutte le app e riavviare Safari "risolve" il problema per me. Quindi sembra un bug in iOS5. – user123444555621
Ho trovato questa pagina che in un modo spiega il mio problema, ma non elabora come risolverlo: http://www.sensiblesoftware.com/weblog/2011/07/06/iphone-javascript-execution-exceeded-timeout/ – YoYoMyo
Vedere anche http://stackoverflow.com/questions/7787219/javascript-ios5-javascript-execution-exceeded-timeout che descrive lo stesso sintomo (ma potrebbe essere causato da un problema leggermente diverso) – user123444555621