IE9 bug s aktualizaci snippetu pokud je adresa odkazu shodna s adresou v prohlizeci

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Jan Mikeš
Člen | 771
+
0
-

Jedna se o bug IE, v dalsich x testovanych prohlizecich jede vse vpohode, treba uz nekdo neco podobneho resil..

Live aplikace je na http://www.clubrivca.cz/

Pokud v menu kliknu na odkaz, smerujici na stejnou adresu na ktere prave jsem, snippet s contentem se neaktualizuje, vlaste se nic nestane.

Priklad, jsem v galerii (http://www.clubrivca.cz/gallery/) kliknu v menu na gallery, nic se nestane. To same pro vsechny ostatni sekce.

Hlavni problem je v tom, ze pokud na stranku prijdu tak mam v adrese http://www.clubrivca.cz/ a tim ze vsechny pozadavky jsou ajaxove tak se adresa nikdy nezmeni, takze se nedostanu zpatky na homepage.

Blok content mam obalen snippetem takto, myslim si ze na tom neni nic spatneho:

{snippet content}
{include #content}
{/snippet}

Editoval Lexi (2. 5. 2012 19:12)

cubic
Člen | 45
+
0
-

Kdyz si zobrazis v IE pomoci F12 Nastroje pro vyvojare a prepnes se do zalozky Sit, spustis zachytavani a zobrazis si podrobne… Tak potom mrkni na request na tu zminenou homepage. V zalozce Zahlavi uvidis kod odpovedi 304 / Not Modified. Resil jsem to uz drive na par webech (i kdyz v trochu jine souvislosti) a asi jedina moznost je posilat request na server s nahodnym parametrem. Tedy v IE to zmenit napr. na:

$.get(this.href + '?' + new Date().getTime());

/js/settings.js, radek 134

Samozrejme pokud mas URL uz takhle s otaznikem a parametrem, dopln si tam kontrolu a nahrad ? za &

link = this.href;

if ((link.split('?').length - 1) > 0) {
    link = this.href + '&cache=' + new Date().getTime();
} else {
    link = this.href + '?cache=' + new Date().getTime();
}

$.get(link);
Jan Mikeš
Člen | 771
+
0
-

Diky moc, pomohlo ;)