Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX]Jak ustawić parametry komponentów w jquery?
Forum PHP.pl > Forum > Przedszkole
northwest
Witam serdecznie,
Mam pytanie co do komponentu: https://github.com/kthornbloom/Smoothslides...aster/README.md

Wywołuję go w taki sposób:
  1. $(window).load( function() {
  2. $(document).smoothSlides({
  3. duration: 5000,
  4. autoPlay: 'true',
  5. captions: 'false',
  6. navigation: 'false',
  7. pagination: 'false'
  8. });
  9. });


Chciałbym dać 2 parametry do efektów: effect dać tylko 2 efekty: zoomIn oraz zoomOut.
W jaki sposób mogę to zrobić (jak to zapisać)?

Bardzo proszę o pomoc,
Northwest
SmokAnalog
Ta biblioteka nie pozwala na wybór większej liczby efektów. Poczytałem sobie jednak kod i ona robi coś takiego:
[JAVASCRIPT] pobierz, plaintext
  1. eval(options.effect + "()");
[JAVASCRIPT] pobierz, plaintext

Możesz pokombinować i wstawić do pola effect dowolny kod. Jak zrobisz na przykład tak:
[JAVASCRIPT] pobierz, plaintext
  1. $(document).smoothSlides({
  2. duration: 5000,
  3. autoPlay: 'true',
  4. captions: 'false',
  5. navigation: 'false',
  6. pagination: 'false',
  7. effect: 'zoomIn();zoomOut'
  8. });
[JAVASCRIPT] pobierz, plaintext

Wywołają się oba efekty. Niestety to nie da najprawdopodobniej oczekiwanego efektu, bo wywołają się naraz. Daj znać co się stało.
northwest
Dziękuję za odpowiedź.
niestety przy końcu animacji "rwie" obrazek sad.gif
Masz może jakiś pomysł jak to rozwiązać?
SmokAnalog
Trudno mi na sucho odpowiedzieć, bo nie wiem nawet co robi ta biblioteka. Rozumiem, że chcesz żeby obrazek się powiększył i po jakimś czasie pomniejszył? Możesz pokombinować z czymś w stylu:
[JAVASCRIPT] pobierz, plaintext
  1. effect: 'setTimeout(zoomOut, 2000);zoomIn'
[JAVASCRIPT] pobierz, plaintext
northwest
chciałbym żeby najpierw stronę przybliżyło, a potem przy kolejnym slajdzie oddaliło smile.gif
to fajnie chodzi przy opcji random - tylko jak ograniczę ilość efektów do tych 2 które mi się podobają to nie chce działać sad.gif
SmokAnalog
Rozumiem. Strzelam, że coś w stym stylu mogłoby pomóc:
[JAVASCRIPT] pobierz, plaintext
  1. effect: 'window.currentEffect === "zoomIn" ? "zoomOut" : "zoomIn"; this[window.currentEffect]'
[JAVASCRIPT] pobierz, plaintext


EDIT:

Źle, spróbuj tak:
[JAVASCRIPT] pobierz, plaintext
  1. effect: 'window.isZoomIn = !window.isZoomIn; if (window.isZoomIn) zoomIn(); else zoomOut'
[JAVASCRIPT] pobierz, plaintext
M@X
Przerabiam dokładnie ten temat i w sumie chodzi mi o to samo, tzn chce ustawić efekty w danej kolejności. Ale...
sam kod posiada niby możliwość order: normal lub random oraz effect:
Problem w tym że jak wybiore order: = normal to i tak muszę wybrać albo tylko jedną funkcje w effect: albo dać random... co automatycznie i tak losowo wybiera mi efekty, więc order: tutaj na nic sie nie zdaje...
[JAVASCRIPT] pobierz, plaintext
  1. var defaults = {
  2. duration: 1000,
  3. autoPlay: 'true',
  4. effect: 'random',
  5. effectEasing: 'ease-in-out',
  6. nextText: ' ?',
  7. prevText: '? ',
  8. captions: 'true',
  9. navigation: 'false',
  10. pagination: 'false',
  11. order: 'normal'
  12. }
[JAVASCRIPT] pobierz, plaintext


Pozostaje w takim razie przerobić funkcje tak aby pod przykrywką "random" nie wybierało z tablicy kilku efektów i je randomowało.. tylko po kolei je pokazywało. No ale z tym właśnie nie mogę sobie już poradzić sad.gif
[JAVASCRIPT] pobierz, plaintext
  1. var fn = function() {
  2. if (options.effect == 'random' && options.autoPlay == 'true') {
  3. var fns = [zoomOut, zoomIn];
  4. fns[Math.floor(Math.random() * fns.length)]();
  5. } else if (options.effect == 'false') {
  6. //
  7. } else {
  8. eval(options.effect + "()");
  9. }
  10. }
[JAVASCRIPT] pobierz, plaintext


Może ktoś pomóc jak wywalić tego Math.random żeby pokazywał w kolejności najpierw zoomOut następnie zoomIn
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.