2011-07-20 4 views
2

Ainsi, après la refonte de mon site, je pensais que j'utiliser l'API d'histoire HTML5, quand j'ai vu une utilisation brillante ici: http://diveintohtml5.ep.io/examples/history/casey.htmlAPI Histoire HTML5 avec des liens standard

Le problème est, le code fourni ne fonctionne pas pour moi, (en utilisant Chrome 8).

Vous ne savez pas exactement pourquoi, mais il actualise simplement la page avec la valeur href du lien après le chargement partiel du contenu partiel.

Y a-t-il d'autres exemples de cette utilisation de l'API? Je ne veux pas History.js ou quoi que ce soit de ce genre qui utilise hash/hashbangs comme un repli. J'essaie de m'en débarrasser.

Des idées?

edit: Firebug me lance un 'lien sans valeur' ​​ainsi que d'innombrables requêtes pour le contenu partiellement chargé. Après ces la page rafraichit

+1

Pourquoi utilisez Chrome 8 vous ? Est-ce que votre mise à jour automatique est cassée? – robertc

+0

tout à fait hors de propos, mais c'est la dernière version que je devais frapper le symbole '+' – Ricki

+0

Pouvez-vous poster votre code? – Gaurav

Répondre

2

Vous devez intercepter le clic de lien et appelez votre propre pushState - si vous consultez le code sur la page que vous verrez le gestionnaire d'événements:

function addClicker(link) { 
    link.addEventListener("click", function(e) { 
    if (swapPhoto(link.href)) { 
     history.pushState(null, null, link.href); 
     e.preventDefault(); 
    } 
    }, true); 
}