Question

Quand je change le contenu d'un site à l'aide bascule, ou qui jamais autre fonction, l'état ne sont pas enregistrées. Donc, si cela est ma page:

<div id='test'></div>
<input type='submit' value='test'>
<a href='http://www.stackoverflow.com'>link to elsewhere</a>​

et cela est dans mon prêt-code:

$(':submit').click( function() {
  $('#test').text( 'this is a test' );
});

quand je clique sur le bouton d'envoi de la div sera rempli de «ceci est un test. Quand je suis le lien vers stackoverflow et cliquez sur « retour » de la DIV sera vide à nouveau. Comment puis-je faire la DIV persistante en cliquant sur une autre page, un peu comme dans la façon dont les éléments de <input> sont persistants (ie. Si j'entrer du texte dans un <input type='text'/> et cliquez sur le lien que le texte sera toujours là quand je clique sur « retour »)

Finalement, je veux sauver l'état d'une bascule ... ou devrais-je utiliser des cookies pour résoudre celui-ci, ce qui signifie que je dois écrire ma propre fonction de basculement, qui n'est pas un gros problème, mais je préfère ne pas utiliser les cookies ... les gens sont toujours paranoïaques

Était-ce utile?

La solution

Oui, vous pouvez utiliser des cookies, un hachage url, ou vous pouvez cacher l'état comme une chaîne dans « window.name ». Bien sûr, quel que soit l'endroit où vous stockez votre état, vous devez chercher sur la charge et réinitialiser l'état où il était.

Une bonne chose window.name si vous pouvez cacher des pages entières de HTML là-dedans, puis de les recharger de nouveau dans les DOM, l'état précédent inclus. Bien sûr, d'autres pages peuvent remplacerez « window.name » si vous avez besoin d'un plan B lorsque cela se produit.

Le « hachage url » est très utile et peut être utilisé avec AJAX ainsi.

En savoir plus: http://code.google.com/web/ajaxcrawling /docs/specification.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top