5

Make a vote. Click on a link on the page. Hit the back button.

At least for me (FF 3.0 on Ubuntu), I see the orange vote marker, but the number has not been changed. Often, I voted up an answer that had 0 votes, making me believe that somebody down voted it.

Of course, refreshing the page fixes it, but this is sort of annoying.

EDIT: As I figured, this seems to be a browser cache issue. I still consider this a bug as the orange vote marker is there, but not the changed number. I don't know much about web development, but it seems to me like this should be possible to fix. Any ideas why this is happening?

2
  • Hmm, Safari 4 on a Mac works as it should... maybe it's a FF thing? Jun 30, 2009 at 1:12
  • @Jeff could you confirm if NathanTuggy's crystal ball read you correctly on the SE's position regarding the underlying technical reasons at meta.stackexchange.com/q/300148/174091 ? Aug 30, 2017 at 19:19

3 Answers 3

8

I don't think many in the SO Community will be confused by that behavior. After all, you're navigating backwards into your cache :)

2
  • 1
    Hmm, I figured it was a browser cache thing, but I'm not sure why the orange vote marker would be there but the number would remain the same.
    – Zifre
    Jun 30, 2009 at 21:58
  • Caching is supposed to be completely transparent for the user. That includes the browser correctly deciding whether the cached page has expired or not. Sep 7, 2017 at 21:13
2

This sounds like a browser cache issue.

1
  • Since it's HTTP response headers that tell the browser how it should cache the page, it's also the site's issue. Current Cache: private tells them to cache and use the cached info unconditionally. Aug 30, 2017 at 13:20
0

This is an issue with the site caused by the way it updates its pages, and there are time-proven solutions for it out there.


Navigating back after doing AJAX changes produces a stale cached version of the page confirms that the issue is reproduced consistently and is not caused by any glitches of specific network setups or browsers.

According to You Do Not Understand Browser History :: madhatted.com, upon navigating back, the browser unconditionally presents a cache entry because, as per RFC 2616 sec. 13.13:

...a history mechanism is meant to show exactly what the user saw at the time when the resource was retrieved.

Which, even in the most modern browsers, does not, apparently, include JS-induced changes to the page, contrary to the spirit of the provision. Naturally, SO is full of questions how to overcome this - and a multitude of solutions which include:

  • the crudest: an onUnload event invalidates browser cache entirely
  • the values of form fields - including hidden ones - are preserved on back-forward and can be used as hints
  • onLoad is called again on navigating back and is the way to do the actual work

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .