Chrome и Safari не вызывают событие HTML5 onpopstate.Вот мой пример:
<!doctype html>
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onpopstate = function(e) {
document.getElementById("log").innerHTML = "HELLO";
}
$(function() {
$("a").click(function(e) {
e.preventDefault();
window.history.pushState({page: $(this).index()}, $(this).html(), $(this).attr('href'));
});
});
</script>
</head>
<body>
<a href="new-state">Foo</a>
<a href="other-state">Hallo</a>
<div id="log"></div>
</body>
</html>