Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Odświeżaj diva, jeżeli checkbox jest checked
Maxie
post 4.07.2012, 12:08:37
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


Mam taki problem. Dostałem skrypt w JS, służący do odświeżania diva. Wygląda on następująco:
Kod
$("#rozmowa").show("fast").load("chat_core.php").show("fast");
        var refreshId = setInterval(function() {
            $("#rozmowa").show("fast").load('chat_core.php').show("fast");
        }, 100);
    $.ajaxSetup({ cache: false });

Jestem zielony w JavaScripcie a wolałbym gdyby odświeżało się jeżeli checkbox jest w pozycji checked. Wykombinowałem coś takiego:
Kod
if($('#refresh').attr('checked')) {
   var auto_refresh = setInterval(
    function ()
    {
    $('#rozmowa').load('chat_core.php').fadeIn("slow");
    }, 100); // refresh every 10000 milliseconds
} else {
    $('#rozmowa').load('chat_core.php').fadeIn("slow");
}]

Ale to niestety nie działa ;/ Więc co robię nie tak?

Ten post edytował Maxie 4.07.2012, 12:09:09
Go to the top of the page
+Quote Post
mikolaj51
post 4.07.2012, 13:37:12
Post #2





Grupa: Zarejestrowani
Postów: 59
Pomógł: 13
Dołączył: 16.03.2012

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


Witaj,

spróbuj coś takiego, na szybko pisałem:

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function(){
  2. var repeat;
  3. var auto_refresh = function(){
  4. $('#rozmowa').load('chat_core.php').fadeIn("slow");
  5. };
  6. auto_refresh();
  7.  
  8. $('#refresh').change(function(){
  9. if($('#refresh').attr('checked')) {
  10. repeat = setInterval(auto_refresh, 100);
  11. }
  12. else{
  13. repeat = clearInterval(repeat);
  14. }
  15. });
  16. });
[JAVASCRIPT] pobierz, plaintext
Go to the top of the page
+Quote Post
kamil4u
post 4.07.2012, 13:43:05
Post #3





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

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


Prosty przykład jak powinieneś to zrobić: http://jsfiddle.net/Bhs5U/


--------------------
Go to the top of the page
+Quote Post
Maxie
post 4.07.2012, 19:39:36
Post #4





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


Ten kod co podał mikolaj51 wygląda "dobrze". Tylko nic nie daje zaznaczenie checkbox'a o id refresh ;/.
kamil4u próbowałem do tego dodać .load('chat_core.php') oraz podmieniłem ID ;p i nic pusto.
Go to the top of the page
+Quote Post
mikolaj51
post 4.07.2012, 19:52:39
Post #5





Grupa: Zarejestrowani
Postów: 59
Pomógł: 13
Dołączył: 16.03.2012

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


Nie tylko wygląda dobrze, ale też działa wink.gif
A dodałeś bibliotekę jQuery do strony? Masz może gdzieś wersję ogólnodostępną na stronie żeby można było zobaczyć?
Go to the top of the page
+Quote Post
Maxie
post 4.07.2012, 21:02:41
Post #6





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


Bibliotekę dodałem, w końcu pokazuje mi ten pierwszy raz tongue.gif ale nie sprawdza mi checkbox'a ;/ mam wersję na darmowym hostingu ;] .
Go to the top of the page
+Quote Post
mikolaj51
post 4.07.2012, 21:06:50
Post #7





Grupa: Zarejestrowani
Postów: 59
Pomógł: 13
Dołączył: 16.03.2012

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


Możesz dać link, bo jak testowałem swoje rozwiązanie na komputerze to szczerze mówiąc wydaje mi się poprawne wink.gif
Pierwszy raz wczyta ten czat, a potem w zależności od zaznaczonego pola będzie odświeżać albo nie
Go to the top of the page
+Quote Post
Maxie
post 4.07.2012, 21:11:27
Post #8





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


http://maxie.cba.pl/AP/index.php
Zaloguj się na konto testowe, działa przez 2h :
Login: forTest
Hasło: for

Ujrzysz wtedy czat tongue.gif, który jest na tym oparty, oraz u dołu checkbox, który nie działa jak powinien.
Go to the top of the page
+Quote Post
kamil4u
post 4.07.2012, 21:35:46
Post #9





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

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


I pokaż jak przerobiłeś moje smile.gif


--------------------
Go to the top of the page
+Quote Post
Maxie
post 4.07.2012, 21:37:21
Post #10





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


Kod
var test;
$('#checkbox').change(function(){
    if( this.checked ){
        test = setInterval(function(){
            $('#div').fadeOut("slow").fadeIn("slow").load('chat_core.php');
        },1000);
    } else {
      clearInterval( test );
    }
});
Go to the top of the page
+Quote Post
kamil4u
post 5.07.2012, 15:39:46
Post #11





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

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


Wrzuć to online i pokaż jak działa z Twoim kodem. Dodaj też odpowiednią linię i sprawdź czy sama funkcja load się wykonuje poprawnie.


--------------------
Go to the top of the page
+Quote Post
Maxie
post 9.07.2012, 00:01:47
Post #12





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


BUMP
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 - 20:05