Autor Zpráva
Sitole
Profil
Dobrý den, chci se zeptat jak řešit automatické prolnutí obrázků. Logicky bych to řešil pomocí JS, ale nemám s tím zkušenosti. JS znám pouze okrajově a v případě nouze, kdy jej opravdu musím použít, si naleznu již hotové řešení. Můj problém je následovný. Potřeboval bych automaticky dejme tomu každých deset sekund změnit pozadí určitého prvku. Je jedno, jestli se budou obrázky načítat lokálně, či pomocí celé adresy. Nejspíše ze bude automaticky pomocí PHP dosazeno například pět fotografií. Jak bych tedy tento problém měl řešit a jestliže případně existuje již hotové řešení, tak bych ho rád využil.
Předem děkuji. :-)
Taps
Profil
Co toto Plynulá změna obrázků
Sitole
Profil
Taps:
V základu je to přesně to co si představuji. Problém je, že netuším jak si upravit zobrazení obrázků z klasického img na pozadí. Lépe řečeno to nedokážu tak, aby plynulá změna stále fungovala. Uvažoval jsem o roztažení img přes celou obrazovku, aby to tedy ve výsledku vypadalo jako pozadí a nikoliv jako obyčejné obrázek, ale přeci jen to chci udělat pořádně. :-)
Bubák
Profil
Plynulá změna obrázků na pozadí funguje jen v prohlížečích s "chromým jádrem".
Sitole
Profil
Bubák:
Je pravda, že je na nic používat řešení, které alespoň v polovině případů nefunguje. Jak bych tento problém měl tedy řešit?


Nakonec jsem celý problém vyřešil následovně. Funkce opakování vygenerovala číslo 1-3 (název souboru), který následovně dosadila do části, která načítá pozadí stránky. Nakonec funkce počká pět sekund a znovu se zavolá. Ještě řeším generování čísel tak, aby se neopakovali, ale to už bude nejspíše jednoduché. Případně bych byl rád za připomínky, protože si nejsem jistý, že to bude fungovat vždy a všude. Děkuji. :-)

Než jsem odeslal příspěvek, tak jsem hledal. Né a né najít to generování postupné a náhodné. Jak bych to měl provést? :-)

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>

<script>
function Opakovana() {
    var Nahodne = Math.floor((Math.random() * 3) + 1);
    $('body').css('background-image', 'url(http://X/Galerie/' + Nahodne + '.jpg)');
    window.setTimeout("Opakovana()", 5000); // volá sebe samu odloženou o sekundu
}
Opakovana();
</script>

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: