Autor Zpráva
Vasuge
Profil
Dobrý den
Poptávám úpravu jQuery na webu. Jedná se o konflikt mezi dvěma aplikacemi, který způsobuje ovlivnění funkčnosti. Pokud problém vyřešíte, vyrovnáme se. Může to být i malá chyba, ale nevim si už rady. :)

Jde o to že se načítá špatně nanoGALLERY na webu www.rodeo.cz/beta/. Nefunguje zde stránkování. Pokud kliknete na čísla, tak až po tom naběhne správný počet obrázků. Když poté překliknete v menu a vrátíte se zpět, strákování už nefunguje vůbec.

Podle mě je chyba někde v souboru main.js, kde dochází ke konfliktu.

Děkuji
Chamurappi
Profil
Reaguji na Vasuge:
V Exploreru 10 je to celé nepoužitelné… zjevně pečeš nějaký stokrát dobrý dort, který nebude poživatelný pro všechny. Ladit, která přísada konkrétně zlobí, je skoro mimo lidské možnosti (navíc je jQuery stavěné tak, že obvykle nehlásí žádné chyby), lze jen tipovat.
V souboru jquery.nanogallery.min.js na 107. řádku před 216. znakem chybí var před $p, ale to nejspíš nezpůsobuje problém.
Chvíli mi trvalo, než jsem zjistil, o jaké galerii vlastně mluvíš, protože jsi neodkázal přímo na galerii, protože to u tvého webu momentálně nejde, jednotlivé podstránky nemají unikátní adresu (a nefunguje správně tlačítko Zpět).

Řekl bych, že ta galerie funguje přesně podle toho, co slibuje – je responsivní, takže se přizpůsobuje dostupné šířce. Inicializuješ ji při jQuery(document).ready, ona přeměří dostupný prostor a zobrazí, co se do něj vejde (minimálně jednu fotku). Dostupný prostor uvnitř bloku s display: none je samozřejmě nula, což vysvětluje, že je vidět jedna fotka.
V dokumentaci popisují funkci, kterou jde vyvolat přepočítání velikosti: jQuery("#nanoGallery").nanoGallery("refreshSize"); – nejspíš by tedy stačilo, kdybys to zavolal v okamžiku, kdy jsou ujasněné rozměry obalu galerie.

tak až po tom naběhne správný počet obrázků
Správný počet je pět? V okně s šířkou 2560? Jen 35 % plochy mají pokrývat náhledy, zbytek dřevo?

Když poté překliknete v menu a vrátíte se zpět, strákování už nefunguje vůbec.
Protože swiper.jquery.js na 2086. řádku schovávané slajdy likviduje. Volá na nich remove z jQuery, což elementy nejen odebere z dokumentu, ale i důkladně zničí. Pak při přepnutí zpátky se přidávají do stránky naklonované kopie původních slajdů, které už postrádají události navěšené na originálu. To není zrovna malá chyba, je to prostě hloupě vymyšlené. Nabourá to prakticky cokoliv, co na podstránkách použiješ. Skoro jQuery neznám, nepoužívám ho, ale jestli jsem dobře pochopil dokumentaci, myslím, že autor toho Swiperu měl použít spíš detach (nebo prostě nastavit zpátky display: none) a celkově postupovat jinak.

Pokud problém vyřešíte, vyrovnáme se.
Jako odměna mi postačí, že se důkladně zamyslíš nad použitelností a kompatibilitou svého webu. Jezdící efekt ti velmi pravděpodobně nepřidá víc zákazníků, než ti rozbité tlačítko Zpět ubere.
Vasuge
Profil
Děkuji mnohokrát
Abych se obhájil a nevypadal za hlupáka co neví co dělá, ten web jsem netvořil já a ani bych se za něj nikdy nepodepsal. :)
Pomáhám s tim kamarádovi, který se nabídl nešťasnému vlastníkovi toho webu, že mus s tim pomůže. Člověk, který to tvořil vůbec nemyslel na responsivitu a tak jsem přidal responsivní menu a tu galerii, která tam vůbec nebyla. Ano vim, že je to slátanina a taky když jsem to viděl poprvé, nadával jsem, jak je někdo schopen tohle pustit do světa. Web založený na slideru? :D Vážně? Nepřehledný, přes url se nedá odkazovat na jiné stránky... hrůza! Ale hold mi ho bylo líto a tak jsem se nabídl že mu s tim pomůžu ikdyž s jQuery nejsem vůbec kamarád. Radší to PHP s MySQL, kde mi to tu chybu napíše. A ano, míchám kódy dohromady, ale je to nejrychlejší řešení. Vlastník webu bohužel nemá zájem o komplet nový web a já mu to nedokázal říct za jakou blbost zaplatil takovou astronomickou částku.
A tak jsem s tim včera bojoval až jsem se dostal k týhle poslední "chybě" a za tu mockrát děkuju. Zkusim to nějak vyřešit.

Klička

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: