Autor | Zpráva | ||
---|---|---|---|
monte Profil * |
#1 · Zasláno: 19. 9. 2009, 15:35:03
Ahoj, pral bych si malou drobnost, absoulutne ale netusim jak to udelat. :(
Ma predstava: Chtel bych aby muj web mohl mit vice pozadí a ty aby se náhodně měnily, např. někdo naklikne na muj web a pod strankou bude mit nejake pozadi, nekdo jiny vsak uplne jiné :) Pak příjde jindy, a bude mit zase jine pozadí, dokazal bych si to predstavit asi takhle, byl by soubor ktery by obsahoval naky scriptík a na kazde starnce bych pak na tento script odkazoval, script by pak do stranky nahodne dosadil napr. jeden z 10 ruznych tapet, v css by v :background byla napsaná jen barva. Pokud by byl nekdo tak hodný a dokazal poradit, popride vyhledat/napsat ten script tak mu budu velice vdecny, protoze ja absolutne nevím, mam jen predstavu :( Díííky!! :) |
||
panther Profil |
#2 · Zasláno: 19. 9. 2009, 15:49:02
monte
nech se inspirovat. |
||
monte Profil * |
yoooooooooooooo
<? $images = array("images/image1.gif", "images/image2.gif", "images/image3.gif", "images/image4.gif"); mt_srand(time()); $random_index = mt_rand(1, (count($images))); $random_index--; ?> <IMG src="<? echo "$images[$random_index]" ?>" > Toto vypada presne jako to co jsem hledal a je to i celekem srozumitelne :) Ale, kam to mam umístit? :) Přímo do stránky ? Asi jo, že? :-D Jiank mockrát děkuju :) |
||
monte Profil * |
#4 · Zasláno: 19. 9. 2009, 15:54:03
PS: ale, ted jen premyslim, bude toto opravdu pracovat s pozadim webu nebo to bude jen zobrazovat obrazky? Díky :)
|
||
panther Profil |
#5 · Zasláno: 19. 9. 2009, 15:54:48
monte
„Ale, kam to mam umístit?“ neptej se tak hloupě a zkus si to. Na zeď v pokoji si to asi nenamaluješ. |
||
panther Profil |
#6 · Zasláno: 19. 9. 2009, 15:56:41 · Upravil/a: panther
monte
„PS: ale, ted jen premyslim, bude toto opravdu pracovat s pozadim webu nebo to bude jen zobrazovat obrazky? Díky :)“ místo <img..> tam budeš mít třeba <body style="background: PHP RAND">. Případně můžeš mít <body id="pozadi<?php echo mt_rand(1, 10) ?>"> |
||
imploder Profil |
#7 · Zasláno: 19. 9. 2009, 16:49:37
„mt_srand(time()); “
Mt_srand je zbytečné, je možné volat mt_rand rovnou. |
||
monte Profil * |
#8 · Zasláno: 19. 9. 2009, 17:49:05
ehm,
v <head> mam tedy toto: <? $images = array("images/sitebg.jpg", "bg/sitebg2.png", "bg/sitebg3.jpg", "bg/sitebg4.jpg", "bg/sitebg5.jpg", "bg/sitebg6.png", "bg/sitebg7.png", "bg/sitebg8.png", "bg/sitebg9.jpg", "bg/sitebg10.png"); mt_rand; $random_index = mt_rand(1, (count($images))); $random_index--; ?> <body style="background: PHP RAND"> je to ok? Navíc už mi to nehazí errory.. xd |
||
monte Profil * |
a v css mám:
#main1 { width: 100%; background: url(bg/sitebg.jpg) no-repeat bottom left fixed; id: 1; background: url(bg/sitebg2.png) no-repeat bottom left fixed; id: 2; background: url(bg/sitebg3.jpg) no-repeat bottom left fixed; id: 3; background: url(bg/sitebg4.jpg) no-repeat bottom left fixed; id: 4; background: url(bg/sitebg5.jpg) no-repeat bottom left fixed; id: 5; background: url(bg/sitebg6.png) no-repeat bottom left fixed; id: 6; background: url(bg/sitebg7.png) no-repeat bottom left fixed; id: 7; background: url(bg/sitebg8.png) no-repeat bottom left fixed; id: 8; background: url(bg/sitebg9.jpg) no-repeat bottom left fixed; id: 9; background: url(bg/sitebg10.png) no-repeat bottom left fixed; id: 10; padding-left: 50px; } Zobrazuje se mi poze to poslední pozadí (bg/sitebg10.png) už jsem z toh blazen :-D |
||
WanTo Profil |
#10 · Zasláno: 19. 9. 2009, 18:05:45 · Upravil/a: WanTo
Ještě aby se ti to poslední pozadí nezobrazovalo furt - v CSS platí přece to, co je napsané jako poslední. Prostě z #main1 vyhoď všechna nastavení vlastnosti background (a asi i id).
|
||
monte Profil * |
#11 · Zasláno: 19. 9. 2009, 18:08:46
pokud odmazu bacground tak mi zmizí pozadí uplně.. ehm, prosím poraď, netusim co tam mam doplnit :( .. díky
|
||
WanTo Profil |
#12 · Zasláno: 19. 9. 2009, 18:34:43
Proboha...
Třeba nějak takhle by to mohlo fungovat (píšu to z hlavy a rovnou upozorňuju, že jsem to netestoval): <?php $images = array("bg/sitebg1.png", "bg/sitebg2.png", "bg/sitebg3.png", "..."); ?> <body style="background-image: url(<?php echo $images[rand() % count($images)];?>);"> ... Mimochodem, když už to na stránky dáváš, máš nějaký rozumný důvod, proč by to tam mělo být? |
||
monte Profil * |
#13 · Zasláno: 19. 9. 2009, 18:56:02
No protože by to mohlo zajimavě vypadat, kliknete jinam a mate jine pozadí, :)
Pred chvili jsem zkousel javascript a při jednom pokusu to fungovalo ale stale nevim jak to dat do pozadí, jsem amater :( :) |
||
monte Profil * |
#14 · Zasláno: 19. 9. 2009, 18:56:32
ps: nějak to nefunguje, to co jsi psal, presto ti ale dekuju :) za snahu
|
||
WanTo Profil |
#15 · Zasláno: 19. 9. 2009, 19:00:01 · Upravil/a: WanTo
monte
A nějaké chybové hlášení to třeba nepíše? ;-) Můžu tam mít někde třeba překlep - říkám, netestoval jsem to - stejně tak může být třeba jen špatně nastavená cesta k obrázku. |
||
monte Profil * |
#16 · Zasláno: 19. 9. 2009, 19:04:14
tak jsem na to prisel sam, pouzitim javascriptu :)
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Náhodný obrázek v JavaScriptu</title> <script type="text/javascript"> var obrazky = new Array("sitebg.jpg", "sitebg2.png", "sitebg3.jpg"); window.onload = function() { document.getElementById('bg').style.backgroundImage = 'url("bg/'+obrazky[Math.round(Math.random()*(obrazky.length-1))]+'")'; } </script> </head> <body> <div id='bg' style="width:300px; height:600px"></div> </body> jeste to "propojit" s css a je to. Asi to tak udelam, funguje to :) a halseni to pise :) Chyba značky: -> Textpattern Warning: PHP značky jsou zastaralé on line 1011 Chyba značky: -> Textpattern Warning: raw_php_disabled on line 1015 |
||
WanTo Profil |
#17 · Zasláno: 19. 9. 2009, 19:05:39
„No protože by to mohlo zajimavě vypadat, kliknete jinam a mate jine pozadí, :) “
Ale taky to může vypadat naprosto děsně. Ale jinak musím říct, že přes všechen svůj odpor k těmhle věcem jsem viděl i stránky, kde se mi proměnlivé pozadí celkem líbilo - a to web FAMU. Mají to tam pořád, tak se můžeš podívat do kódu (řešené šíleným JavaScriptem), jen jim to teďka zrovna nefunguje, někdo totiž očividně vymazal ze serveru ty obrázky (: |
||
monte Profil * |
#18 · Zasláno: 19. 9. 2009, 19:10:13
mozna se ti to bude libiti i u me, teda az to bude hotove :)))
no a tu je problem. v hlavicce mam toto: <script type="text/javascript"> var obrazky = new Array("sitebg.jpg", "sitebg2.png", "sitebg3.jpg"); window.onload = function() { document.getElementById('bg').style.backgroundImage = 'url("bg/'+obrazky[Math.round(Math.random()*(obrazky.length-1))]+'")'; } </script> tedy sileny java script jak rikas :-D no a toto v těle :) <div id='bg' style="width:300px; height:600px"></div> jenze, jak to co mám v body, vložit do css abych to v body mit nemusel, prosíím :) xD |
||
WanTo Profil |
#19 · Zasláno: 19. 9. 2009, 19:27:10 · Upravil/a: WanTo
Člověče, seber se a běž si do knihkupectví koupit nějakou literaturu o tvorbě webu, CSS a PHP. Vždyť ty tomu ani trochu nerozumíš...
Tady máš JavaScriptový kód. Jednoduchý jak facka, funguje to, testoval jsem to. (Obrázky jsem vyhrabal z Googlu.) <html> <head> <title>Nahodne pozadi</title> </head> <body> <script type="text/javascript"> var images = new Array( "http://www.hudebni-scena.cz/downloads/wallpapers/detail/iron-maiden-scary-wallpaper.jpg", "http://www.pozadinablog.cz/img/18-xl-bubbling.jpg", "http://nd01.blog.cz/462/117/86dfd0cfe7_4179740_o2.jpg"); var randomIndex = Math.floor(Math.random()*images.length); document.body.style.backgroundImage = "url(" + images[randomIndex] + ")"; </script> Tady je nejaky, nejspis fakt necitelny text. </body> </html> |
||
monte Profil * |
#20 · Zasláno: 19. 9. 2009, 19:30:00
tak díky, me tamto fungovalo :-D jen jsem nevedel jak tohle:
<div id='bg' style="width:300px; height:600px"></div> prelozit do css, presto díky :) |
||
WanTo Profil |
#21 · Zasláno: 19. 9. 2009, 19:31:08
Mimochodem, nevím, jestli jsi to někde opsal nebo vymyslel sám, ale když použiješ pro generování indexu Math.round(Math.random()*(obrazky.length-1)), tak se ti bude první a poslední obrázek zobrazovat s 2x menší pravděpodobností, než ty ostatní.
|
||
monte Profil * |
#22 · Zasláno: 19. 9. 2009, 19:34:37
no opsal, chci te jen poprosit, mohl by jsi mi prosím opravdu prepsat toto <div id='bg' style="width:300px; height:600px"></div> do obycejneho řádku css? Ja bych mozna vedel, ale plete se mi tam to "id" .. vlastne nevim jak to prepsat. Díky :)
|
||
WanTo Profil |
#23 · Zasláno: 19. 9. 2009, 19:42:24
#bg {width: 300px; height: 600px; }
Doufám, že aspoň víš, proč je to generování indexu s použitím Math.round špatně. A vážně si zajdi do toho knihkupectví. |
||
monte Profil * |
#24 · Zasláno: 19. 9. 2009, 19:48:00
fuj, hotovo. Jo do knihovny zajdu, nake knizky vratit az je prectu a pak mozna zajdu mezi regály "informační technologie" :))
www.mojemandriva.cz - muzes se podivat xD .. sem amatern no :] |
||
monte Profil * |
#25 · Zasláno: 19. 9. 2009, 19:50:01
jeste bych rad dodal, díky moc :)
|
||
panther Profil |
#26 · Zasláno: 19. 9. 2009, 19:54:32
monte
a to pozadí, které má každé 1,5MB myslíš vážně? |
||
monte Profil * |
#27 · Zasláno: 19. 9. 2009, 20:00:08
jenm jedno :-D .. ale me prvni pristup trval vterinu, dalsi pristupy uz si prohlizesc obrazek pamatoval.
no je pravda ze s dial-upem bych si ty stranky prohlizet nechtel, ale jinak je to ok :) |
||
panther Profil |
#28 · Zasláno: 19. 9. 2009, 20:02:40
monte
moc ok to není, ale dělej, jak myslíš |
||
monte Profil * |
#29 · Zasláno: 19. 9. 2009, 20:05:08
PS: ono jde o to ze kazde to pozadi by melo mit alespon 1600x1200 protoze kdyz bych tam dal 800x600 tak se u stroju s vestim rozlisenim bude ten obrazek opakovatcoz nevypada moc hezky no a s takto velkym pozadim uz tu velikost o moc nezmensim, navic to vypada docela dobre :) Jen by to chtelo vychytat obrazky ktere tam nejvic padnou :)
|
||
Taurus Profil |
#30 · Zasláno: 21. 9. 2009, 01:05:53
A na moje rozlišení 1920 x 1200 jsi nemyslel? :-(
Dal bych tam ještě větší obrázky... když už se natahuje velké množství dat, tak ať rovnou pořádné. :-)) |
||
Téma pokračuje na další straně.
|
0