Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript] efekty wpadania po odświeżaniu diva
Forum PHP.pl > Forum > Przedszkole
djsalat
witam:)
Chcialem powiedzieć na wstępie ze nie kminię javacripta i chciałbym aby ktoś mnie nakierował delikatnie albo sam powiedział co dopisać i w którym miejscu aby po odświeżeniu poniżej podanego pliku plik sie tak fajnie nakładał z efektem wpadania albo nakładania.

o to pliki


1. który ma tego diva który się odświeża ( "responsecontainer") i chce zeby on własnie po kazdym odświeżeniu się jakoś nakładał albo wpadał czy coś w tym stylu:)

  1. <!-- For ease i'm just using a JQuery version hosted by JQuery- you can download any version and link to it locally -->
  2. <script src="jquery-1.3.2.min.js"></script>
  3.  
  4. $(document).ready(function() {
  5. $("#responsecontainer").load("response.php");
  6. var refreshId = setInterval(function() {
  7. $("#responsecontainer").load('response.php?randval='+ Math.random());
  8. }, 9000);
  9. });
  10. </head>
  11.  
  12. <div id="responsecontainer">
  13. </div>
  14. </body>


2. ten to już zbedny do podania tu ale pokaże ;p bo tu jest ta treść która ma wpadaćsmile.gif

  1. <? echo rand(); ?>


3. to oczywiście biblioteka jquery...




kapuch
Musisz to jakos lepiej opisac bo:
Cytat
i chce zeby on własnie po kazdym odświeżeniu się jakoś nakładał albo wpadał czy coś w tym stylu:)

malo kto zrozumie, nawet ja po paru browarach nie jestem w stanie tego rozkminic, a zazwyczaj po browarze rozjasnia mi sie umysl winksmiley.jpg
Daj jakis przyklad - strone, albo opisz dokladniej.
djsalat
to jest sobie taki skrypt co odswierza jeden div co jakis czas. No i po każdym odświeżeniu chciałbym aby to co nowe przyjdzie po odświeżeniu wchodziło z efektem np którymś z tych : http://jquery.malsup.com/cycle/
kapuch
No to praktycznie sam sobie udzieliles odpowiedzi, a dokladniej wystarczy ten Twoj skrypt ladowania dac wewnatrz funkcji odpowiedzialnej za ta animacje, w jquery chyba kazda funkcja ma miejsce na kod, ktory ma sie wykonac po skonczeniu animacji i tam wlasnie wstawiasz ten kod do ladowania tresci.
Nie chce mi sie zagladac w kod tej strony wiec posluze sie funkcja animate() dla przykladu:
[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. $('#responsecontainer').animate({ // costamcostam
  3. }, 5000, function() {
  4. // A tutaj wklejasz kod odpowiedzialny za ladowanie tresci, ale juz bez $('document)ready....,ktory wykona sie po skonczeniu animacji
  5. // czyli tak:
  6. $("#responsecontainer").load("response.php");
  7. var refreshId = setInterval(function() {
  8. $("#responsecontainer").load('response.php?randval='+ Math.random()); }, 9000);
  9. });
  10. });
[JAVASCRIPT] pobierz, plaintext

Jak nie bedzie dzialac to pokombinuj, bo moze czegos zapomnialem wykasowac, lub dodac - poprostu kopiowalem na szybko.
Ale powinno byc ok.
djsalat
coś nie tak;/ nie ma zmian wogóple tak jak przedtem sie pojawiło tak jest zero animacji:(

najlepszy byłby dla mnie ten drugi efect na tej stronie http://www.givainc.com/labs/marquee_example.htm

tylko jak go połączyć z tym sad.gif
kapuch
Tak jak pisalem, nie wiem czy tamte funkcje maja mozliwosc wykonania kodu, kiedy dana animacja bedzie skonczona, bo na jquery slabo sie znam.
Ale jesli maja to napewno da sie to zrobic.
Ja posluze sie kolejnym przykladem, na funkcjach fadeOut() i fadeIn(), mozliwe ze ten efekt ci wystarczy, a jesli nie, to
chociaz bedziesz wiedzial jak sie to m/w robi:

Plik INDEX HTML/PHP jak wolisz
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Costamcostam</title>
  5. <style type="text/css">
  6. .slideshow{
  7. border: 1px solid #000;
  8. width: 300px;
  9. height: 60px;
  10. background: #CC0;
  11. font-family: Verdana, Geneva, sans-serif;
  12. font-size: 16px;
  13. color: #000;
  14. text-align: center;
  15. vertical-align: middle;
  16. }
  17. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
  18. <script type="text/javascript">
  19. function animuj() {
  20. $('.slideshow').fadeOut('slow', function() {
  21. $('.slideshow').load("plik.php?id="+Math.random(), function() {
  22. $('.slideshow').fadeIn('slow');
  23. });
  24. });
  25. // zamiast atrybutu 'slow' w funkcjach fadeOut() i fadeIn(), mozesz wpisac np. 4000 zeby dluzej trwal efekt.
  26. }
  27. </head>
  28.  
  29. <body onload="setInterval('animuj()', 4000);"> <!-- TU USTAWIASZ ODSTEP CZASOWY -->
  30. <div class="slideshow">
  31. Puste
  32. </div>
  33.  
  34. </body>
  35. </html>


A TUTAJ PRZYKLADOWY PLIK Z TRESCIA (plik.php)
  1. <?php
  2. echo 'Losowa liczba:<br /><B>'.$_GET['id'].'</B>';
  3. ?>

U mnie to dziala ladnie.
djsalat
o to mi chodziło:)))

genialny jesteś;p

a są jeszcze jakieś inne efekty zamiast fade in i fade out??


Szczerze mówiąc interesował by mnie cos w podobie co na tej stronie http://www.malsup.com/jquery/cycle/cover2.html
kapuch
Zobacz to:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Untitled Document</title>
  5. <style type="text/css">
  6. h2 { margin: 5px 0px 0px 0px; }
  7. /* ================ PRZYKLAD 1 ================= */
  8. .container1{
  9. border: 1px solid #000;
  10. width: 300px;
  11. height: 60px;
  12. background: #FFF;
  13. font-family: Verdana, Geneva, sans-serif;
  14. font-size: 16px;
  15. color: #000;
  16. text-align: center;
  17. vertical-align: middle;
  18. }
  19. #slideshow1{
  20. background: #C9F;
  21. height: inherit;
  22. width: inherit;
  23. }
  24.  
  25. /* ================= PRZYKLAD 2 ================ */
  26. .container2{
  27. position: relative;
  28. width: 200px;
  29. height: 200px;
  30. background: #CCF;
  31. border: 1px solid #000;
  32. overflow: hidden;
  33. }
  34. #slideshow2{
  35. background: #666;
  36. position:absolute;
  37. top: 0px;
  38. left: 0px;
  39. width: inherit;
  40. height: inherit;
  41. }
  42.  
  43. /* =============== PRZYKLAD 3 ================== */
  44. .container3{
  45. position: relative;
  46. width: 200px;
  47. height: 200px;
  48. background: #CCF;
  49. border: 1px solid #000;
  50. overflow: hidden;
  51. }
  52. #slideshow3{
  53. background: #666;
  54. position:absolute;
  55. top: 0px;
  56. left: 0px;
  57. width: inherit;
  58. height: inherit;
  59. }
  60. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
  61. <script type="text/javascript">
  62. // =============== PRZYKLAD 1 ==================
  63. function animuj1() {
  64. $('#slideshow1').fadeOut('slow', function() {
  65. $('#slideshow1').load("plik.php?id="+Math.random(), function() {
  66. $('#slideshow1').fadeIn('slow');
  67. });
  68. });
  69. }
  70.  
  71. // =============== PRZYKLAD 2 ==================
  72. function animuj2(){
  73. $('#slideshow2').animate({
  74. left: '-=200px'
  75. }, 'slow', function() {
  76. $('#slideshow2').load("plik.php?id="+Math.random(), function() {
  77. $('#slideshow2').animate({ left: '+=200px' }, 'slow');
  78. });
  79. });
  80. }
  81.  
  82. // =============== PRZYKLAD 3 ==================
  83. function animuj3(){
  84. $('#slideshow3').slideUp('slow', function() {
  85. $('#slideshow3').load("plik.php?id="+Math.random(), function() {
  86. $('#slideshow3').slideDown('slow');
  87. });
  88. });
  89. }
  90.  
  91. </head>
  92.  
  93. <body onload="setInterval('animuj1()', 4000); setInterval('animuj2()', 4000); setInterval('animuj3()', 4000); setInterval('animuj4()', 4000);">
  94. <!--=============== PRZYKLAD 1 ==================-->
  95. <h2>Przykład 1</h2>
  96. <div class="container1">
  97. <div id="slideshow1">Puste</div>
  98. </div>
  99.  
  100. <!--=============== PRZYKLAD 2 ==================-->
  101. <h2>Przykład 2</h2>
  102. <div class="container2">
  103. <div id="slideshow2">Puste</div>
  104. </div>
  105.  
  106. <!--=============== PRZYKLAD 3 ==================-->
  107. <h2>Przykład 3</h2>
  108. <div class="container3">
  109. <div id="slideshow3">Puste</div>
  110. </div>
  111.  
  112. </body>
  113. </html>

Tak na szybko zrobione, wybierz sobie.
djsalat
chyba już znalazłem swoje rozwiązanie:)


korzystałem z tej stronki moze komus terż się przyda do efektów:) :http://blog.alchemycode.pl/2010/01/15/szyb...cja-elementami/

poprostu zamieniłem twoje fade na slide smile.gif dzięki bardzo za pomoc jeszcze raz:)

kapuch
Cytat(djsalat @ 20.08.2010, 19:23:02 ) *
chyba już znalazłem swoje rozwiązanie:)


korzystałem z tej stronki moze komus terż się przyda do efektów:) :http://blog.alchemycode.pl/2010/01/15/szyb...cja-elementami/

poprostu zamieniłem twoje fade na slide smile.gif dzięki bardzo za pomoc jeszcze raz:)

Spoko, ale wydaje mi sie ze od slide, lepsze jest animate, tak jak dalem w przykladzie 2, bo wyglada to tak, jakbys zmienial kartke, bo litery ida w lewo razem z divem, a przy slide masz efekt, tak jakbys ucinal diva.
Zawsze mozesz przerobic ten moj 2 przyklad z animate, tak aby zamiast w lewo, przesuwal sie do gory, wystarczy zamienic "left: '-=200px'" ma "top: '-=200px'" i "left: '+=200px'" na "top: '+=200px'".
Chyba bedzie lepiej wygladac - ale to kwestia gustu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.