Autor Zpráva
epsik
Profil *
Dobrý den,
nemůžu přijít na způsob, jak přiřazovat prvkům funkci s nějakými parametry (function (parametr, dalsi_parametr) , pokud jim ji přiřazuji přes obsluhu událostí.
zkouším toto:

// toto jsem někde zkopíroval kvůli univerzální obsluze událostí
function addEvent(obj, event, funct) {
  if (obj.attachEvent) { //IE
    obj['e' + event + funct] = funct;
    obj['x' + event + funct] = function() {
          obj['e' + event + funct](window.event);
        }
    obj.attachEvent('on' + event, obj['x' + event + funct]);
  } else // other browser
    obj.addEventListener(event, funct, false);
}

// a zde je má funkce
function prohodit(id_kabelky,id,pocet){
	
	var koef = id_kabelky - 1;
	
	for (var i=1; i < pocet+1; i++) {
		
		var kabelka = "obrazek"+id+i;
		
		var novyNazev = i+koef;
		
		if (pocet < novyNazev ) novyNazev -= pocet;
		
		objekt = document[kabelka];
		
		objekt.src = "upload/"+id+"/thumbs/obrazek"+novyNazev+".png"
		
		funkce = prohodit(novyNazev,id,pocet); //tady nastává ten problém...pokud by byla funkce bez závorek (a tudíš i bez argumentů), tak to bude fungovat
		
		addEvent(objekt, "click", funkce);						
		
	};
	
}




Zkoušel jsem i jiné možnosti, ale samozřejmě taky potřebuji, aby mi to fungovalo ve všech prohlížečích...poradíte někdo?
epsik
Profil *
ještě abych to zjednodušil, jde mi vlastně jen o něco takového:

		document[kabelka].onclick = function(){	
		 													
		 	prohodit (novyNazev,id,pocet);
		 				
		 }

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: