Ciao,
con questa funzione molto semplice cambio il contenuto di un layer (il cui id è targetLayer).
Dopo 2 secondi lo riporto al suo valore iniziale, salvato preventivamente nella variabile previousContent.
Codice PHP:
function fill(newContent) {
var d = document;
// Creo una copia del contenuto originale del layer nella variabile [b]previousContent[/b]:
var previousContent = d.getElementById('targetLayer').innerHTML;
// Sostituisco il contenuto del targetLayer:
d.getElementById('targetLayer').innerHTML = newContent;
// Dopo 2 secondi riporto il contenuto del targetLayer al suo valore originale:
window.setTimeout("LayerRefill("+previousContent+")", 2000);
}
function LayerRefill(a) {
document.getElementById('targetLayer').innerHTML = a;
}
ma il contenuto del layer non varia dopo i 2 secondi in quanto la funzione LayerRefill() non riceve alcun valore.
Pertanto credo di sbagliare la temporizzazione della funzione con argomento tramite setTimeout, sebbene non sappia dove possa aver sbagliato e qualcuno qui (ma anche altrove) conferma che il modo corretto è quello, ovvero i backslash o giocare con gli apici singoli/doppi.
Qual è il modo corretto di passare la variabile previousContent alla funzione LayerRefill() ?