Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> jak zrobić taki efekt, w jakiej technologii?
wiciu010
post 8.03.2008, 18:43:43
Post #1





Grupa: Zarejestrowani
Postów: 195
Pomógł: 0
Dołączył: 29.04.2007

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


jak zrobić coś takiego jak tutaj http://www.ftb.pl/ chodzi o ten box pod menu gdzie jest najnowsze wiadomości? Że jak najade na spis wiadomości to zmieniaja się po lewej treści? Da się to tylko za pomocą css+php i oczywiście tresci pobierane z mysql?
Go to the top of the page
+Quote Post
Xniver
post 8.03.2008, 18:58:07
Post #2





Grupa: Zarejestrowani
Postów: 108
Pomógł: 26
Dołączył: 29.02.2008

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


Będziesz potrzebował jeszcze Javascriptu
Go to the top of the page
+Quote Post
matix
post 9.03.2008, 10:21:35
Post #3





Grupa: Zarejestrowani
Postów: 278
Pomógł: 10
Dołączył: 13.02.2007
Skąd: Rybnik

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


Ja proponuję advAjax.

Po prostu z prawej strony dajesz linki w postaci:

  1. <ul>
  2. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  3. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  4. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  5. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  6. </ul>


Tworzysz teraz funkcję getContentOfAjax(url) no i pobierasz ajaxem dane z danego URL do wskazanego przez ciebie DIV-a.

Wszystko =)


--------------------
Nawet, jeżeli nie jesteś zainteresowany usługami IT ani outsourcingiem, a Twoją pasją jest programowanie - zobacz naszą stronę. Piszemy dużo fajnych use-caseów, jak podchodzimy do tematu programowania dla naszych klientów. A tak na co dzień tworzymy budujemy mvp oraz tworzymy platformę b2b.
Go to the top of the page
+Quote Post
wiciu010
post 9.03.2008, 12:25:44
Post #4





Grupa: Zarejestrowani
Postów: 195
Pomógł: 0
Dołączył: 29.04.2007

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


Cytat(matix @ 9.03.2008, 10:21:35 ) *
Ja proponuję advAjax.

Po prostu z prawej strony dajesz linki w postaci:

  1. <ul>
  2. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  3. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  4. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  5. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  6. </ul>


Tworzysz teraz funkcję getContentOfAjax(url) no i pobierasz ajaxem dane z danego URL do wskazanego przez ciebie DIV-a.

Wszystko =)


a mógłbyś mi napisać jakby wyglądała taka funkcja getContentOfAjax(url) ? i jak pobierać dane ajaxem z danego URL, i wstawić do diva?
Go to the top of the page
+Quote Post
bim2
post 9.03.2008, 14:32:23
Post #5





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


  1. function getContentOfAjax(url) {
  2. advAJAX.get({
  3. url: url,
  4. onSuccess : function(obj) {
  5. //ramka('loading');
  6. document.getElementById('divka').innerHTML = obj.responseText;
  7. },
  8. onError : function(obj) {
  9. alert(obj.status);
  10. }
  11. });
  12. }
  13. <div id="divka"></div>
  14. <ul>
  15. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  16. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  17. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  18. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContentOfAjax(this.href);return false;">How to make...</a></li>
  19. </ul>


EDIT: Aha, potrzebujesz do tego biblioteki advAjax stworzonej przez anakina (advAjax.anakin.us)

Ten post edytował bim2 9.03.2008, 14:33:04


--------------------
Go to the top of the page
+Quote Post
phpion
post 9.03.2008, 22:02:54
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Nie sądzicie, że wasze rozwiązanie jest nie do końca poprawne? Otóż po co za każdym razem wywoływać Ajax przy każdym najechaniu myszki na dany link? Ja zrobiłbym to inaczej: pobrał zawartość wszystkich elementów (np. z bazy) i wyświetlił na stronie w formie zakładek. Przy przejściu pomiędzy kolejnymi zakładkami nie odbywałoby się żadne żądanie do serwera; cała praca spadłaby na JavaScript. Użycie Ajaxa wydaje mi się zbędne; "zwykłe" JS zrobi dokładnie to samo ale szybciej i wydajniej.
Go to the top of the page
+Quote Post
windman
post 10.03.2008, 00:07:03
Post #7





Grupa: Zarejestrowani
Postów: 184
Pomógł: 13
Dołączył: 7.01.2008

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


Cytat(phpion @ 9.03.2008, 22:02:54 ) *
Nie sądzicie, że wasze rozwiązanie jest nie do końca poprawne? Otóż po co za każdym razem wywoływać Ajax przy każdym najechaniu myszki na dany link? Ja zrobiłbym to inaczej: pobrał zawartość wszystkich elementów (np. z bazy) i wyświetlił na stronie w formie zakładek. Przy przejściu pomiędzy kolejnymi zakładkami nie odbywałoby się żadne żądanie do serwera; cała praca spadłaby na JavaScript. Użycie Ajaxa wydaje mi się zbędne; "zwykłe" JS zrobi dokładnie to samo ale szybciej i wydajniej.


Popieram, pewnie będziesz tak jak na wspomnianej stronie pokazywał tylko kilka rekordów, można je bez problemu wstawić do ukrytych div'ów i po najechaniu myszką pokazywać.
Po co niepotrzebnie obciążać serwer?

Pozdrawiam
Go to the top of the page
+Quote Post
bim2
post 10.03.2008, 12:45:01
Post #8





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


No to:
  1. function getContent(id) {
  2. document.getElementById('div_'+id).display = "block";
  3. }
  4. <div id="div_1">Tutaj tresc1</div>
  5. <div id="div_2">Tutaj tresc2</div>
  6. <div id="div_3">Tutaj tresc3</div>
  7. <div id="div_4">Tutaj tresc4</div>
  8. <ul>
  9. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContent(1);return false;">How to make...</a></li>
  10. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContent(2);return false;">How to make...</a></li>
  11. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContent(3);return false;">How to make...</a></li>
  12. <li><a href="news/1/how-to-make-somethink" onmouseOver="getContent(4);return false;">How to make...</a></li>
  13. </ul>

:]


--------------------
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: 19.07.2025 - 08:51