SEO: setTimeout

Sto facendo nuove verifiche in quanto potrebbero esserci delle novità “contrastanti”…

Durante la progettazione di un evento online avevo la necessità di capire come Google possa reagire a chiamate javascript dilazionate nel tempo, ovvero a modifiche della pagina che non avvengono in modo diretto, ma dopo un preciso tempo.

Qualche mese fa feci già un simile test per verificare come Google reagisse a javascript nel caso di chiamate sincrone (ovvero comandi di modifiche eseguiti “in linea” con l’HTML) e asincrone (ovvero che avvengono dopo altri eventi, dopo il caricamente del DOM).

In questo caso la cosa è un po’ diversa: la chiamata della funzione javascript avviene tramite il metodo setTimeout il quale indica quale funzione chiamare dopo tot millisecondi. Il codice è innestato in pagina: alla fine quindi è un ibrido sincrono (setTimeout) e asincrono (la funzione di modifica DOM). Come reagirà Google?

Per fare il test ho inserito all’interno di un post 3 parole: una in HTML, una col setTimeout a 1 secondo, 1 col setTimeout a 10 secondi. Chiaramente prima ho verificato che tali marcatori non fossero presenti in serp: superdeliberius, fermintalizzazione (1 sec.) e superdromicitazione (10 sec.).

Ecco il codice inserito:

superdeliberius &lt;span id="testamiDiv"&gt;&lt;/span&gt; &lt;span id="testamiDiv2"&gt;&lt;/span&gt;<br />&lt;script&gt;<br />function testami(){document.getElementById('testamiDiv').innerHTML = 'fermintalizzazione';}<br />function testami2(){document.getElementById('testamiDiv2').innerHTML = 'superdromicitazione';}<br />t = setTimeout("testami()",1000);<br />t2 = setTimeout("testami2()",10000);<br />&lt;/script&gt;

Dopo poche ore i risultati sono apparsi: la parola in HTML è stata indicizzata, le altre due assolutamente no! E’ una regola definitiva? Diciamo che è una regola che vale al momento in cui il test si è svolto? E’ riproducibile il test? Probabile: ma nessuno assicura che Google nel frattempo non si sia prodigato a cambiare il comportamento e il knowhow dei propri spider (googlebot).

Loading Facebook Comments ...

9 pensieri su “SEO: setTimeout

  1. Merlinox Autore articolo

    Infatti. Ho avuto un’amarissima sorpresa. Ora devo capire se era colpa che il settimeout arriva prima della chiusura del DOM o no! Domanda… il dom si chiude quando ha caricato tutto l’html o all’onload?

    Rispondi
  2. Pingback: SEO: setTimeout (la vendetta) @merlinox

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *