I have a single page application that uses Knockout.js for data binding and Sammy.js for routing client-side (hash-based) URLs.
I'm seeing a weird problem in Internet Explorer, however: sometimes links, when clicked, will change the URL in the browser's address bar, but the corresponding Sammy route will not execute.
It doesn't happen every time (but I can consistently reproduce the error), and it only happens in IE10 (Chrome works fine every time). It appears to be related to Knockout as well, since a set of hard-coded links don't exhibit the same problem.
To illustrate, I've stripped away everything but the bare minimum to recreate the problem and created two jsbin examples:
Example 1 (with Knockout): http://jsbin.com/aretis/2/
To see the problem, open the link above and click "Record #1", then "Baz", then "Record #1" again. The URL for record 1 will appear in the address bar, but the route for that record will not be appended to the list.
Example 2 (without Knockout): http://jsbin.com/amivoq/1/
In this example, I have a static list of record links instead of a data-bound list. Clicking on any of the links (in any order) will result in that route being appended to the list (as it should).
A reminder that these must be run in IE to reproduce the problem.
Any ideas?