Newsgroup: it.lavoro.informatica
Titolo: [OT] Questione di tempismo

Si tratta di un OT perchè non è una questione sul lavoro nell'ambito 
informatico, ma un vero e proprio
problema informatico.
Mi scuso in anticipo per l'uso improprio del NG, ma la questione che voglio 
porre alla vostra attenzione
è una di quelle che non sono riuscito a risolvere con San Google.
Dunque, qualcuno di voi conosce un metodo per determinare attraverso l'uso 
degli eventi di un WebBrowser
quando una pagina web è completamente caricata compreso eventuali javascript 
che riempiono dinamicamente
dei SELECT o costruiscono frams etc. etc.
Io ho trovato tantissime soluzioni che riguardano per esempio l'evento 
onDownloadComplete oppure la proprietà
ReadyState del webbrowser, ma l'evento onDownloadComplete viene richiamato 
piu' di una volta con il valore
ReadyState a READYSTATE_COMPLETE, inoltre lo stato READYSTATE_COMPLETE si 
verifica anche quando
la navigazione della pagina non va abuon fine. Per queste ragioni non riesco 
a trovare un metodo automatico che
mi assicuri che al completamento della pagina possa essere eseguita una 
determinata azione.
Voi avete qualche illuminante suggerimento?
Grazie a tutti!
-- 
______________________
Gaetano
"Nel coltellino svizzero di Chuck Norris c'è McGyver" 

 problema informatico.
Più che altro è OT perché non è una questione politica relativo al
lavoro in ambito informatico.
:)
Scusa l'intrusione. Non so come aiutarti. In bocca al lupo.

 determinata azione.
forse sto sparando una stronzata, ma se metti in fondo alla pagina la 
cosa che vuoi che venga eseguita per ultima questa scattera' alla fine 
della pagina qs vale per javascript... -_-
ps
1 esistono altri ng specifici
2 imho non hai immesso suff. inf. che descrivono il tuo problema
cya

 2 imho non hai immesso suff. inf. che descrivono il tuo problema
Hai ragione, devo aggiungere che io non costruisco una pagina web, ma la 
navigo tramite un
client che fa riferimento alle librerie di IE , la pagina web a cui mi 
riferisco è una qualsiasi pagina
tipo libero, google o altro, quella che navigo io compila i campi select 
tramite uno script e dunque
devo analizzare quando finisce il caricamento di tutti i dati.


 devo analizzare quando finisce il caricamento di tutti i dati.
Asd a spannella, dando per scontato che l'html che arriva e' ok, 
potresti creare un una routine temporizzata(cioe' un timer) in 
javascript che verifica se nel dom della pagina (a qs punto presumo che 
sia un frame )che devi analizzare e' presente il tag </html> allora la 
pagina si e' caricata tutta correttamente... ma stai facendo tutto lato 
client non hai una goccia di codice server side? :-D

 side? :-D
Esatto, tutto lato client.
______________________
Gaetano
"Nel coltellino svizzero di Chuck Norris c'č McGyver" 

 determinata azione.
L'evento document.onload viene scatenato al completamento del 
caricamento della pagina ma non ti fornisce informazioni sul 
corrispondente onload delle risorse contenute (es. sulle immagini), 
dovresti farlo ricorsivamente sul DOM della pagina.
Resta comunque il problema del caricamento di componenti via js.
 > Voi avete qualche illuminante suggerimento?
Illuminante non credo, comunque potresti farti un tuo parser che, 
parallelamente al browser, ricerchi nella pagina le informazioni che ti 
servono (con delle "wait" finché non le ha trovate).
Dipende da che linguaggio e librerie usi.
Ciao,
Paolo

"Pablo Xon" <pabl...@NIENTESPAMconcavi.net> ha scritto nel messaggio 
news:48032eef$0$18160$4faf...@reader3.news.tin.it...

Hai colto perfettamente la problematica e mi hai risposto esattamente come
ho trovato in giro. Speravo di avere una possibilità lineare per risolvere 
il
problema, ma a quanto pare non ho speranze. La soluzione con un parser
temporizzato è quella che sto usando già ora. a questo punto la miglior più
che posso.



L' evento onload scatta dopo che la pagina è stata caricata
http://www.w3schools.com/jsref/jsref_onload.asp
quindi l'ultima funzione javascript, per esempio un timer, ti darà
l'informazione che tutto ciò che doveva essere caricato è stato
caricato.
Un esempio potrebbe essere il seguente:
<html>
<head>
<title>...</title>
<script type="text/javascript">
<!--
var began_loading = (new Date()).getTime();
function done_loading() {
 (new Image()).src = '/timer.gif?u=' + self.location + '&t=' +
  (((new Date()).getTime() - began_loading) / 1000);
}
// -->
</script>
<!--
Reference any external javascript or stylesheets after the above
block.
// -->
</head>
<body onload="done_loading()">
<!--
Put your normal page content here.
// -->
</body>
</html>