Je dois être en mesure de remplacer tout le contenu du document par une réponse obtenue à partir d'une requête ajax.Remplacement d'un corps de document sur l'iPhone
J'ai essayé d'assigner à document.body.innerHTML
et ai également essayé using document.write()
. Alors que les deux sont fonctionnels sur le bureau Safari, j'ai besoin d'une solution pour l'iPhone/iPod Touch. Tenter de modifier document.body.innerHTML
produit l'exception 7 et la fonction document.write()
est indéfinie sur mobile safari.
J'affiche essentiellement un indicateur d'activité en attendant la fin d'une publication. Je ne veux pas que Safari commence à rendre la réponse jusqu'à ce qu'elle soit complète, car cela pourrait prendre un certain temps.
Je suis sur safari 4 bêta sous Windows, avec l'agent utilisateur réglé sur IPhone. Cela ne fonctionne pas sur l'iPod touch que j'ai. En outre, j'affecte une réponse HTML entière à la propriété innerHTML. –
Hm, avez-vous essayé d'enlever les balises html, head et body de la réponse HTML avant de le passer au javascript? Peut-être n'aime-t-il pas charger un tag html ou body dans une balise body. – kbosak
@Martin Je suppose que la requête ajax contient une page entière basée sur votre réponse à cette réponse. En supposant que c'est vrai, pourquoi utilisez-vous AJAX, pourquoi ne pas simplement charger le nouveau contenu du corps comme une toute nouvelle page. Pourquoi utiliser AJAX? N'est-ce pas le but de définir document.location.href et d'utiliser des balises d'ancrage pour faire ce que vous cherchez? – coderjoe