When I trigger set location with SammyJS, IE seems to cache the url and it doesn't trigger the route. To get around this I've added a date string to the end of my route:
var d = Date.now();
sammy.setLocation("#location" + d);
Is there a better way to fix this issue without the addition of a date string?
IE9 and before will cache GET requests. (I don't think this happens in IE>=10, but feel free to correct me.) Also, if memory serves, IE<=9 is not the only browser that does this - Safari (don't have the versions in front of me, but I don't think newer versions will behave this way) will also do this. I think it's done in an effort to save round-trips and bandwidth.
That said, there are a couple of options to try to hack around it: