Autor | Zpráva | ||
---|---|---|---|
Anonymouz Profil * |
#1 · Zasláno: 17. 9. 2019, 16:46:37
Zdarec vytvářím pro pro jeden redakční systém slider z náhledových obrázků u příspěvku. Vše by bylo supr, kdyby všechny příspěvky měly stejný počet náhledových obrázků, jenže to bohužel nemají. Jednou bude mít příspěvek 5 obrázků, jindy třeba jen 2 atd. Dá se nějak spustit funkce reset počítadla vždy když už slider nemá obrázek? Živá ukázka
Díky za rady. |
||
RastyAmateur Profil |
#2 · Zasláno: 17. 9. 2019, 17:31:46
Anonymouz:
Jednoduše zkontroluješ, jestli jsi na poslední fotce a když ano, tak místo += 1 to vynuluješ.
if (this.soucasneCislo == this.obrazky.length - 1) { this.soucasneCislo = 0; } |
||
Anonymouz Profil * |
#3 · Zasláno: 18. 9. 2019, 08:56:48
Ahoj, bohužel mi to nefunguje, protože pole obrázky si nechává vypsané všechny hodnoty a nemění se po kliknutí. Ke změně dochází pouze u toho čísla.
K tomu textu co tam mám jsem zkusil dát podmínku, aby se to zobrazovalo podle pravidla, které píšeš v-if="obrazky.length - 1" , ale k naplnění této podmínky nedojde nikdy, protože obrazky se nemění. Přidal jsem do příkladu výpis dat, aby bylo vidět co se s tím děje po kliknutí.
Živá ukázka Jde mi o následující: V současném příkladu mám natvrdo napsané, že obrázek se bude zobrazovat jen do čísla 5 na počítadle a na šestce se zobrazí paragraf, který po kliku spustí funkci reset. Tohle funguje, když vím kolik bude obrázků a napevno zadám podmínku. Počet obrázků se ale bude různě měnit. Potřebuji, aby se poslední snímek s textem (který zároveň i resetuje počítadlo) zobrazoval vždy, když dojedu na konec obrázků. |
||
RastyAmateur Profil |
#4 · Zasláno: 18. 9. 2019, 09:15:15
Anonymouz:
Pointa stejná, jako jsem psal v [#2]. Zkontroluješ si to podle délky pole... v-if="soucasneCislo == obrazky.length" Živá ukázka Další možností by bylo si tam ty obrázky rovnou vypsat všechny a pouze přehazovat nějakou třídu. Šla by tím pak i jednoduše nastavit nějaká animace, nebo cokoliv. |
||
Anonymouz Profil * |
#5 · Zasláno: 18. 9. 2019, 13:41:05
Díky moc. Vypadá to, že to funguje. Je to moje první aplikace ve Vue.js a celkově jsem začátečník s JS. Ukázalo se, že nechápu dobře vlastnost length. Myslel jsem si, že to bere délku z počtu znaků a ono to zřejmě bere délku z počtu objektů v daném poli (?). Sorry jestli mám špatné názvosloví, fakt jsem samouk a netuším jak se čemu říká :D
|
||
RastyAmateur Profil |
#6 · Zasláno: 18. 9. 2019, 16:28:59
Anonymouz:
V pohodě. Zrovna dneska jsem se tak ze srandy koukal na své první příspěvky zde na diskusi, takže ti rozumím! :D Programování obecně je strašně o googlení. Když zkusíš zadat js array length, už první odkaz vede na výbornou stránku s dokumentací, kde najdeš odpověď na svou otázku. Takže ano, length u pole počítá počet položek v poli. Kdybys měl řetězec, tak tam už to opravdu počítá znaky (viz String.prototype.length)...
|
||
Časová prodleva: 5 let
|
0