Znalazłem w internecie skrypt na odświeżanie elementu na stronie, jakiegoś diva, co sekunde, bez przeładowania.
Wszystko działa jak należy ale pojawiły sie nieprzewidziane przeze mnie trudności, chciałem zrobić odświeżanie wiadomości na stronie głownej.
Jest sobie div, który sie odświeża a w nim jest texarea do komentarzy, lecz, gdy div odświeża sie co sekunde, logiczne jest ze zawartość textarea też jest oświeżana, gdy próbuje tam coś wpisać. Macie jakiś pomysł, który pozwoliłby mi na zapełnianie texareny a przy okazji dodawania nowych divów na strone , tak aby mozna było spokojnie dopisywać komentarz? podobnie jak na FB.
Tutaj podaje skrypt którego używam
<script language=javascript> // tworzymy zmienna var object = false; // tworzymy obiekt XMLHttpRequest (dla IE jest troche inaczej, stad funkcja warunkowa) if (window.XMLHttpRequest) object = new XMLHttpRequest(); else if (window.ActiveXObject) object = new ActiveXObject("Microsoft.XMLHTTP"); // ponizsza funkcja pobiera dane ze wskazanego zrodla (pliku lub skryptu php) do wskazanego // DIVa poprzez obiekt XMLHttpRequest function getData(dataSource, divID) { // kontynuuje wylacznie gdy obiekt nie jest zajety if (object.readyState==4 || object.readyState==0) { // tworzy zmienna odpowiadajaca konkretnemu obiektowi na stronie var obj = document.getElementById(divID); // czyta z pliku lub wykonuje skrypt object.open("GET", dataSource); // definiuje metode obslugi odpowiedzi serwera object.onreadystatechange = function() { // kontynuuje jesli transmisja zostala zakonczona powodzeniem if (object.readyState == 4 && object.status == 200) obj.innerHTML= object.responseText; } // wysyla zadanie do serwera object.send(null); } } // w ponizszej funkcji wywolujemy funkcje getData z odpowiednimi parametrami // oraz wywolujemy ja sama rekurencyjnie po co okreslony czas (w naszym wypadku 1000 ms) function odswiezaj() { getData('site/main.php','mojDIVIK'); setTimeout("odswiezaj()", 1000); } </script>
Dziękuje, czekam na propozycje.