Comment faire pour activer l'Affichage de Compatibilité IE9 par programmation en Javascript
J'ai besoin de tourner sur IE compatibilité de la programmation.
Je sais que cela fonctionne en C# :
Page.Header.Controls.AddAt(0, new HtmlMeta { HttpEquiv = "X-UA-Compatible", Content = "IE=EmulateIE7" });
Mon problème est que mes fenêtres sont affichées dans une fonction JS: par exemple:
function openRadWin(idAgir) {
radopen("DemandesEnAttente_Estimate.aspx?id=" + idAgir, "RadWindow1");
}
Donc ma question est : est-il possible de faire la même chose en JS?
Merci d'avance
- La raison de votre besoin, ce n'est pas très clair. Pouvez-vous développer?
- document.documentMode est en lecture seule msdn.microsoft.com/en-us/library/ie/cc196988%28v=vs.85%29.aspx et aurait besoin d'un rechargement de toute façon puisqu'il influe sur le rendu de la page
- Mais vous êtes à l'ouverture de votre propre page ASPX. Pourquoi on ne peut pas la page définir le méta? Je ne comprends pas le problème.
Vous devez vous connecter pour publier un commentaire.
Autant que je sache, ce n'est pas possible. Vous pouvez détecter le mode de compatibilité JS mais le réglage, il n'est pas possible à ma connaissance.
Pour ce qui est de votre problème, vous pouvez généralement utiliser quelques solutions:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
) dans la page maître.Par exemple, pour IIS7/IIS7.5, vous pouvez utiliser web.config
Je suggère #1 ou #2 - dans le cas où vous n'avez pas de maître de la page ou de la page de base de la classe puis peut-être un bon moment pour introduire les deux à la fois.
Ce que votre exemple en C# ne, est d'ajouter la balise meta suivante de la page html:
Si vous le faites manuellement sur la page qui exécute le code JS, il devrait fonctionner.
Vous pourriez essayer d'ajouter cette balise HTML en haut de la page, qui nécessite une compatibilité:
De cette façon, vous ne devriez pas avoir besoin d'une solution d'activer JavaScript. Bien sûr, si vous avez la possibilité de modifier le code HTML, puis la meilleure solution serait de fixer la page de sorte qu'il ne nécessite pas de rétro-compatibilité.
Je crois que la seule façon d'influencer les en-têtes du côté client, c'est quand vous demandez une page à l'aide d'un XmlHttpRequest. Il ne fait pas de sens pour moi, de parler de la modification des en-têtes une fois la page chargée, qui est en effet ce que vous demandez.