Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ikona ładowania
brwCode
post 31.08.2012, 21:20:05
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 31.08.2012

Ostrzeżenie: (0%)
-----


Witam, posiadam oto taki kawałek kodu który będę chciał użyć na swojej stronie. Odpowiada on za wczytywanie treści w formie AJAX do danego diva.

Demo: http://gospeak.pl/AJAX/

Chciałbym do tego kodu dodać ikonę "ładowania" , w czasie którym wczytuje się treść do zmiany wyświetla się ta ikonka ładowania.
Z racji tego że z tym językiem stykam się pierwszy raz nie wiem jak to zrobić.

Także szukam czegoś takiego że jak wyślę komuś link http://gospeak.pl/AJAX/#1 to wyświetli mu się zawartość pliku "Wczytaj tekst numer 1" a nie strona główna.

  1. // pierwsza część kodu var ObiektXMLHttp = false;
  2. if (window.XMLHttpRequest)
  3. {
  4. ObiektXMLHttp = new XMLHttpRequest(); }
  5. else if (window.ActiveXObject)
  6. {
  7. ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  8.  
  9. // druga część kodu
  10. function getData(zrodlo, cel) {
  11. if(ObiektXMLHttp)
  12. {
  13. var cel = document.getElementById(cel);
  14. ObiektXMLHttp.open("GET", zrodlo);
  15.  
  16. ObiektXMLHttp.onreadystatechange = function()
  17. {
  18. if (ObiektXMLHttp.readyState == 4)
  19. {
  20. cel.innerHTML = ObiektXMLHttp.responseText;
  21. }
  22. }
  23. // trzecia część kodu
  24. ObiektXMLHttp.send(null); } }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
kamil4u
post 31.08.2012, 22:19:03
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


1. Przed wywołaniem AJAX-a dajesz ikonkę ładowania, następnie po zakończeniu( .readyState == 4 ) usuwasz tę ikonkę
2. Wywołujesz zdarzenie onload/załadowania DOM i w nim sprawdzasz jak wygląda hash - to co jest po #( w JS da się to sprawdzić ). Następnie sprawdzasz odpowiednio zawartość tego hash-a i jak trzeba to wykonujesz żądanie do serwera(, czyli uruchamiasz skrypt AJAX )

3. Tak dodatkowo możesz przejrzeć to: http://forum.php.pl/index.php?showtopic=182921
4. Nie polecam opierać całej strony na AJAX


--------------------
Go to the top of the page
+Quote Post
brwCode
post 31.08.2012, 23:06:39
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 31.08.2012

Ostrzeżenie: (0%)
-----


Jestem świeżakiem w AJAX ale próbowałem tym kodem:

  1. ObiektXMLHttp.onreadystatechange = function() {
  2. if (XMLHttp.readyState == (1 || 0)) {
  3. document.getElementById('loading').innerHTML = "Ładowanie..."; }
  4.  
  5. if (XMLHttp.readyState == 4) {
  6. document.getElementById('loading').innerHTML = "";
  7. document.getElementById(cel).innerHTML = XMLHttp.responseText; }
  8.  
  9. if (XMLHttp.readyState != (1 || 0 || 4)) { document.getElementById('loading').innerHTML = "" } }

Ale nic nie wskórałem.


Tak na marginesie to chcę zrobić coś jak jest na FiberHost, bo tak samo jak oni do zmiany mam tylko centralną część strony (look)

Może lepiej użyć do tego jQuery?
Go to the top of the page
+Quote Post
kamil4u
post 31.08.2012, 23:24:49
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Na pewno będzie Ci łatwiej.

Cytat
XMLHttp.readyState == (1 || 0)

Co to za zapis? Nie można stosować takich skrótów.

Poszukaj w necie to dostaniesz gotowca, bo wiele osób chciało mieć tak jak Ty smile.gif


--------------------
Go to the top of the page
+Quote Post
brwCode
post 4.09.2012, 21:49:55
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 31.08.2012

Ostrzeżenie: (0%)
-----


Zadaje drugie pytania bo moderator zamknął mój nowy tema, a więc:

Posiadam na stronie bibliotekę jQuery (http://code.jquery.com/jquery-latest.js).
Dzięki niej wczytuje pliki .html do danego diva formą
Kod
onClick="$('#news').load('podstrony/newsy.html')


I to wszystko, ale chciałbym dodać do tego jeszcze ikonę ładowania - w czasie którym wczytuje się treść do zmiany wyświetla się ta ikonka ładowania a po wczytaniu znika.

Wiem że jest to krótki kod do takiego "loadera" ale nie mogę nigdzie znaleźć.
Go to the top of the page
+Quote Post
kamil4u
post 5.09.2012, 12:08:30
Post #6





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


robisz tak samo jak Ci pisałem wcześniej - niczym się to nie różni. Do "zniknięcia" ładowania używasz zdarzenia success


--------------------
Go to the top of the page
+Quote Post
brwCode
post 5.09.2012, 19:52:25
Post #7





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 31.08.2012

Ostrzeżenie: (0%)
-----


Nie mogę sobie z tym poradzić, szukam gotowca a na google nie mogę znaleźć.
Go to the top of the page
+Quote Post
kamil4u
post 5.09.2012, 20:10:54
Post #8





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


No ja za Ciebie robić nie będę. Mogę Ci jedynie pomóc. Jak tego oczekujesz to pokaż jak próbowałeś, jeśli liczysz tylko na gotowca to czekaj aż odpisze Ci ktoś inny.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 07:49