Autor Zpráva
Sante
Profil *
Ahoj, vim co potřebuju, ale nevím jak na to, ani moc nevim jak to popsat. Omlouvám se v JS moc neumím. Chci si udělat fotogalerii, kde budou tlačítka "předchozí foto" a "další foto", popmocí PHP si udělám seznam fotek a ke každé bude v poli definovaný popisek a rozměry, nějak takto

obr = new Array("nazev.jpg", "popis obrazku","vyska","sirka")

to je zatím ok, ale pak potřebuju udělat to tlačítka další

document.write ("<a href="#" onClick="document.images['obrazek'].src='"+obr[0]+"', document.images['obrazek'].height='"+obr[3]+"', document.images['obrazek'].width='"+obr[2]+"',window.document.getEleme ntById('popis').innerHTML='"+obr[1]+"', ob++ ;return false">dalsi foto</a>");

vím, jak by se to řešilo, kdybych si ty jednotlivý obrázky načet do pole, ale to bych k nim zase neměl jejich vlastnosti, ideíání byb bylo kdyby šlo udělat něco jako toto

obr[1] = new Array("nazev.jpg", "popis obrazku","vyska","sirka")
obr[2] = new Array("nazev.jpg", "popis obrazku","vyska","sirka")
obr[3] = new Array("nazev.jpg", "popis obrazku","vyska","sirka")

a pak bych jednotlivý vlastnosti volal například takto: obr[1][2] (pro výšku prvního obrázku), ale tkato to asi nepůjde, nemá někdo nějaký nápad? Děkuju předem
Sante
Profil *
Nikdo? napadlo mě toto, ale nefunguje mi to, určitě mám blbě něco napsané, jak říkám, JS není zrovna moje kaše

var ob = "-1";

obrazky = new Array("2.jpg|pofffpis z obrazku|vyska|sirka,"3.jpg|pofffpis z obrazku|vyska|sirka", ....);

function parametryObr(poradi) {
ob = poradi++
obr=obrazky[poradi].split("|");
return ob;
return obr;
}

obr=obrazky[ob].split("|");

document.write ("<a href="#" onClick="document.images['obrazek'].src='"+obr[0]+"', document.images['obrazek'].height='"+obr[3]+"', document.images['obrazek'].width='"+obr[2]+"',window.document.getEleme ntById('popis').innerHTML='"+obr[1]+"', ob++ , parametryObr("+ob+") ;return false">dalsi foto</a>");

provede se první záměna obrázku, ale poté již nic, obrázek je stejný a i ta proměnná ob se při klikání nezvyšuje o 1 :-( (přijde mi, jako, že se ta funkce snad vůbec nevyvolá po kliknutí na další)
peta
Profil
x = new Array (
'aaa',
'bbb',
new Array('ccc','ddd')
);

x[0] = 'aaa'
x[1] = 'bbb'
x[2][0] = 'ccc'
x[2][1] = 'ddd'

x = [
'aaa',
'bbb',
['ccc','ddd']
];

x = new Object ();

x = {
'aaa':'bbb',
'ccc':'ddd'
}

x['aaa'] = 'bbb';
x['ccc'] = 'ddd';

Math1 = new Function();
Math1 = {
'floor':function(x) {return parseint(x))},
'ccc':'ddd'
}
alert(Math1.floor(5.678));

document.images['obrazek'].height
window['document']['images']['obrazek']['height']

Co ti nefunguje na standartnich konstrukcich?
jakpsatweb - javascript - array
jakpsatweb - javascript - object
Sante
Profil *
peta: Super! Děkuju moc, přesně takto jsem to potřeboval vidět, povídání o JS na JPW jsem samozřejmě četl a hodně, ale udělal jsem několik chybek v syntaxi a proto mi to nešlo. Děkuju Ti moc, teď už to dělá, co má.

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:

0