Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ajax] dźwięk po aktualizacji
grzegorz_g
post 10.03.2008, 21:23:59
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


chcialem wykorzystać (przerobić ) kod nospor'a ale nie potrafie go zastosować u siebie. Chodzi mi iż mam (skrót kodu)

  1. <?php
  2. <script language="JavaScript">
  3. advAJAX.setDefaultParameters({
  4.  
  5. onSuccess : function(obj) { document.getElementById(obj.tag).innerHTML = obj.responseText; }
  6.  
  7. });
  8.  
  9.  
  10. function wynik() {advAJAX.get({ tag: "wynik", url: "includes_bets/wynik_live.php" })};
  11.  
  12.  
  13.  
  14. window.setInterval(wynik,1000);
  15.  
  16.  
  17. </script>
  18.  
  19.  
  20.  
  21.  
  22. <div id="wynik"></div>
  23.  
  24. <div id="sounddiv" ></div>
  25.  
  26.  
  27. <script language="JavaScript">
  28. <!--
  29. var sbs = document.getElementById("sounddiv"); 
  30.  sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";
  31. //-->
  32. </script>
  33. ?>



i teraz zależy mi by dźwięk uruchomił się jak nastąpi zmiana wyniku (id="wynik"), teraz jest po kazdym odświeżeniu strony

Ten post edytował grzegorz_g 10.03.2008, 21:24:41


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
devnul
post 10.03.2008, 21:54:37
Post #2





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

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


podpowiedź. zamiast samej biblioteki ajaxowej zainteresuj się jakimś frameworkiem javascript. Polecam jQuery i Prototype. Dzięki temu znacznie łatwiej będzie Ci wykonywać/przechwytywać zdarzenia.


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post
grzegorz_g
post 10.03.2008, 22:16:29
Post #3





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


mam wlasnie jquery, ale za bardzo nie wiem jak mi to ma pomoc w moim problemie


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
devnul
post 11.03.2008, 00:01:56
Post #4





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

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


skoro masz jquery to po co używasz advajax'a? zrób to w jquery. przechwyć zdarzenie zwrotu danych via ajax i odegraj swój dzwięk. proste


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post
bim2
post 11.03.2008, 18:54:55
Post #5





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

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


To
  1. var sbs = document.getElementById("sounddiv");
  2. sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";

wrzuć do:
onSuccess czyli:
  1. advAJAX.setDefaultParameters({
  2.  
  3. onSuccess : function(obj) { document.getElementById(obj.tag).innerHTML = obj.responseText; var sbs = document.getElementById("sounddiv"); sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";}
  4.  
  5. });


--------------------
Go to the top of the page
+Quote Post
grzegorz_g
post 11.03.2008, 22:17:22
Post #6





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


nie o to chodzi, bo ja to mam uruchamiane co 1s

window.setInterval(wynik,1000);


zalezy mi by dzięk pojawil sie w momencie zmiany w tym divie


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
devnul
post 11.03.2008, 23:49:57
Post #7





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

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


a przetestowałes ten kod? chyba nie - bo jesli dobrze tłumaczysz to działa z założenia tak jak powinien


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post
grzegorz_g
post 12.03.2008, 00:14:00
Post #8





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


oczywiście że testowalem, ale teraz jest efekt odgrywania sygnalu co sekunde
a przeciez nie o to mi chodzi - za każdym razem gra sygnal. Mi chodzi jak juz wspomnialem kilka razy, by ten dzwięk pojawil sie tylko w momencie gdy w divie nastapi jakas zmiana (następuje wtedy gdy w bazie zmienie wynik np. 0:0 na 1:0, i dopiero w tym momencie ma pojawić się sygnal)


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
devnul
post 12.03.2008, 00:22:38
Post #9





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

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


prosta przeróbka
gdzies na początku kodu
Kod
var tmp_wynik='';

a później zamiast starej metody
Kod
advAJAX.setDefaultParameters({

onSuccess : function(obj) {
if (obj.responseText!=tmp_wynik){
document.getElementById(obj.tag).innerHTML = obj.responseText;
var sbs = document.getElementById("sounddiv");
sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";
}
}
teraz ok?


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post
grzegorz_g
post 12.03.2008, 00:51:17
Post #10





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


  1. <script language="JavaScript">
  2.  
  3. var tmp_wynik='';
  4.  
  5.  
  6. advAJAX.setDefaultParameters({
  7.  
  8. onSuccess : function(obj) {
  9. if (obj.responseText!=tmp_wynik){
  10. document.getElementById(obj.tag).innerHTML = obj.responseText;
  11. var sbs = document.getElementById("sounddiv");
  12. sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";
  13. }
  14. }
  15.  
  16.  
  17.  
  18.  
  19. function wynik() {advAJAX.get({ tag: "wynik", url: "includes_bets/wynik_live.php" })};
  20.  
  21.  
  22.  
  23. window.setInterval(wynik,1000);
  24.  



taki kod js i niestety nic nie wyswietla w <div id="wynik"></div>


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
devnul
post 12.03.2008, 01:16:42
Post #11





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

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


ja się nie dziwie - czegoś mu brakuje
widze że kompletnie nie chce Ci sie myślec - niech strace.
  1. <script language="JavaScript">
  2.  
  3. var tmp_wynik='';
  4.  
  5.  
  6. advAJAX.setDefaultParameters({
  7.  
  8. onSuccess : function(obj) {
  9. if (obj.responseText!=tmp_wynik){
  10. document.getElementById(obj.tag).innerHTML = obj.responseText;
  11. var sbs = document.getElementById("sounddiv");
  12. sbs.innerHTML="<embed src='images/open.wav' hidden=true autostart=true loop=false>";
  13. }
  14. });
  15.  
  16.  
  17.  
  18.  
  19. function wynik() {advAJAX.get({ tag: "wynik", url: "includes_bets/wynik_live.php" })};
  20.  
  21.  
  22.  
  23. window.setInterval(wynik,1000);
  24.  


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
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: 22.06.2025 - 00:59