Autor Zpráva
Skoplandia
Profil
Zdravim, potrebuji pomoct se zmenou pozadí.
Mám 2 vize uvedu je. Dle meho nazoru je ta prvni slozitejsi ale budu rad kdyz se vyresi aspon jedna.
1) Mam obrazek na pozadi a chci aby se furt menil, takova prezentace obrazku na pozadi webove stranky ( neco jako ve winech 7 když si nastvite pozadi tak se taky mohou stridat obrazky a to bych presne chtel udelat) ale nevim jak na to, asi se bude muset zajet do JVS+PHP fakt netusim proto jsem zde.

2) Mam uz dany obrazek na pozadi ( napriklad psa) a ted mam na strance 3 miniatury obrazku (odkazy pomoci obrazku) a chci ze kdyz kliknu na nejakou miniaturu tak se mi zmeni pozadi obrazku na obrazek ktery bude v url - treba na zirafu ( a v miniature bude zirafa).

Pokud jsem neco vysvetlil blbe tak prosim me opravte, budu vdecny za kazdou pomoc.
Petr Wudi
Profil
1) Změna stylu stránky + Časování
2) <a onclick="něco()"> + Změna stylu stránky
A jestli to není ono, tak je to skutečně vysvětleno blbě. =)
Skoplandia
Profil
Jo s barvou to chapu, ale nejde mi tam strcit obrazek, misto barvy, aby se po takovem najeti zmenil obrazek na pozadi ( ne jen barva pozadi )
1Pupik1989
Profil
Funkce "ZmenPozadi()" by vypadala takto:

function ZmenPozadi(Link){
document.getElementsByTagName('body').cssText="background-image: url("+Link+")";
}

a HTML kód zhruba:
<img src="obrazek1.jpg" onmouseover="ZmenPozadi(this.src)">

Teď jsem možná i trochu mimo, dneska mi to nemyslí :)
panther
Profil
1Pupik1989:
v JS funkci měníš pozadí na body a v HTML máš obrázek (img), což jsou dvě rozné věci, spolu moc nesouvidející.

Nejen, že jedno máš v kódu a druhé měníš, ale nerozeznáváš mezi obrázkem a obrázkem na pozadí.
1Pupik1989
Profil
No já do funkce ZmenPozadi() posilám zdroj obrázku a ten nastavím ve funkci jako pozadí do body. Možná asi nechápu reakci.
Skoplandia
Profil
Nechápu jak to má fungovat, muzet ktomu prihodit vetsi cast zdrojaku ? abych se vtom lep vyznal prosim.
Petr Wudi
Profil
První funkce třeba takto:
var x;
var zdroje= new Array("prvni.png", "druhy.png", "obr.png", "obrazek.bmp"); //Zdroje k obrázkům
window.setInterval("ZmenPozadi()", 15 * 1000);

function ZmenPozadi(){ 
document.getElementsByTagName('body').cssText="background-image: url("+zdroje[x]+")"; //Změní pozadí
x++;
if(x>zdroje.length){x=0;} //Zajišťuje opakování
}

Ale toto bych do normálního webu nedoporučoval.
A druhá je vysvětlená docela dost.
skoplandia
Profil *
Celé to hodit do javascriptu že? to nadefinovani v js dat do hlavicky a pak znovu privolani do body? jestli byste to mohli lehce uvest do kodu jak by to bylo zapasovane v head a pak v body. diki
Frozen
Profil
Přes php se to dá takto:
na začátku php mít:

session_start(); 

* nebo můžeš přes cookies

1) Odkaz z souboru php
<a href='script_pro_vyhodnoceni.php?obrazek=NAZEV_OBRAZKU'><img....></a>


2) script.php
ob_start();
define ("CESTA_K_OBRAZKUM", "tvoje cesta k adresari");

if($_GET['obrazek']!='' AND file_exists(CESTA_K_OBRAZKUM.$_GET['obrazek'])) $_SESSION['obrazek'] = $_GET['obrazek'];
header("location: $_SERVER['HTTP_REFERER']");
ob_end_flush();


3) tvůj style.css bude PHP, takže si to změníš na style.css.php a obalíš to phpkem
<?
if($_SESSION['obrazek']!='' AND file_exists(CESTA_K_OBRAZKUM.$_SESSION['obrazek'])){
$obrazek = $_SESSION['obrazek'];
}else{
$obrazek = "tvuj defaultni";
}
?>
body{background:url(cesta_ke/tvym_obrazkum/<?echo $obrazek;?>)}

<?// konec stylu, pak si tu kdyžtak můžeš dát konec komprese atd....?>
Chamurappi
Profil
Reaguji na 1Pupika1989 a Petra Wudiho:
document.getElementsByTagName('body')
Vrací kolekci elementů s názvem <body>. Element <body> je pak první položkou této kolekce. Nastavovat cssText kolekci nemá smysl. Nastavovat cssText přímo elementu také ne, správně je to style.cssText. Vyhledávat <body> je zbytečné, když už mají prohlížeče připravený document.body.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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