to my HTML <head></head> tag. <meta http-equiv="X-UA-Compatible" content="IE=8" /> "> to my HTML <head></head> tag. <meta http-equiv="X-UA-Compatible" content="IE=8" /> "> to my HTML <head></head> tag. <meta http-equiv="X-UA-Compatible" content="IE=8" /> " />

Uyumluluk Görünümünden kurtulmuyor gibi görünüyor mu?

Flot çizim kütüphanesini kullanıyorum. IE8 ve IE9'da iyi çalışıyor gibi görünüyor, ancak sorun IE9 Uyumluluk Görünümü'nde olduğunda ortaya çıkıyor - grafiklerin hiçbirini oluşturmuyor. Bunun çok sık kullandığı HTML5 tuval nesnesi olduğundan şüpheleniyorum ama yanılıyor olabilirim. Aşağıdakileri yapmayı denedim:

  • Add: <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> to my HTML <head></head> tag. I even tried IE=8 and IE=9 and that did not help either. My tag look like this:

    
    
    
        <meta http-equiv="X-UA-Compatible" content="IE=8" />
        ...
    </head>
    <body>
    ...
    </body>
    </html>
    
  • Because I was still seeing the problem, I added the following to my Global.asax.cs file:

    void Application_End(object sender, EventArgs e)
    {
       // Code that runs on application shutdown
        Response.Headers.Add("X-UA-Compatible", "IE=Edge");
    }
    

Hala sorunla karşı karşıyayım. Benim aldığım hata şudur:

HTML1202: http://intranetdomain/SampleProj/Default.aspx is running in Compatibility View because 'Display intranet sites in Compatibility View' is checked. 
Default.aspx
HTML1113: Document mode restart from IE7 Standards to IE9 Standards 
Default.aspx

Bu işe devam etmek için zaten var mı?

EDIT: Checking my response headers, adding that line in Global.asax.cs did not add them to my headers. I wonder why.

Yanıt Başlıkları:

Key Value
Response    HTTP/1.1 200 OK
Cache-Control   private
Content-Type    text/html; charset=utf-8
Server  Microsoft-IIS/7.5
X-AspNet-Version    4.0.30319
X-Powered-By    ASP.NET
Date    Thu, 27 Oct 2011 20:39:55 GMT
Content-Length  29088

EDIT 2: Görünüşe göre, Application_End yanlış olaydı. Bunun yerine, bunu yapmak, başlığı başlık içine enjekte etti:

void Application_BeginRequest(object sender, EventArgs e)
{
    Response.Headers.Add("X-UA-Compatible", "IE=Edge");
}

Ama problem hala devam ediyor.

16
@SliverNinja: Evet. İlk etiketim var. Ayrıca benim kullandığım kesin biçimlendirme ile sorumu güncellendi.
katma yazar Legend, kaynak
@SliverNinja: Application_BeginRequest içine ekleyerek, öğeyi başlığa enjekte ettik ancak sorun hala devam ediyor.
katma yazar Legend, kaynak
@Chris: Haklıydın. Application_BeginRequest dosyasına eklendiğinde, istemci tarafında üstbilgileri göremiyorum ancak sorun hala devam ediyor :(
katma yazar Legend, kaynak
@Chris: Application_Start yönteminde Response nesnesi henüz kullanılmaya uygun değildir.
katma yazar Legend, kaynak
Application_End doğru olay değil. PreSendRequestHeaders 'ı deneyin ( msdn.microsoft. com/tr-tr/kütüphane/& hellip; )
katma yazar SliverNinja - MSFT, kaynak
Sonra, buradaki popüler geri bildirime göre çalışmalıdır ( stackoverflow .com/sorular/637039/& hellip; ).
katma yazar SliverNinja - MSFT, kaynak
<head> 'in ardından ilk etiket olarak eklemeyi denediniz mi? IE sadece meta etiketler listesinde ilk ortaya çıktığında buna yanıt olarak görünüyor.
katma yazar SliverNinja - MSFT, kaynak
@Legend: Evet, Application_BeginRequest kastettim. Application_End uygulama kapatıldığında patlar ... Uygulamanın yürütülmesi sırasında gerçekleşen İstekler için hiçbir şey yapmaz.
katma yazar Chris, kaynak
Application_End yönteminde yanıt üstbilgisini eklemenizin bir nedeni var mı? Bunun yerine Application_BeginRequest yönteminde olması gerekmez mi?
katma yazar Chris, kaynak

4 cevap

Sorun Internet Explorer uyumluluk görünüm ayarlarınızdan kaynaklanabilir. "Araçlar" menüsüne giderseniz "Uyumluluk Görünümü Ayarları" na giderseniz "Uyumluluk Görünümü'nde intranet sitelerini görüntüle" seçeneğinin değil işaretli olduğundan emin olun. IE'nin, intranetinizde bulunduğunuz gibi algılanan ana makine adınıza dayalı uyumluluk görünümünde sizi zorladığını görüyorsunuz.

IE sürümünüze bağlı olarak, menü araçlarının görünmesi için "Araçlar" menüsünün açılabildiği sol Alt tuşuna basmanız gerekebilir.

28
katma
Evet. Bu gerçekten böyledir. Bunu kendim için değiştirebilirken, ben bu ayarı geçersiz kılmaya çalışıyorum (pek emin değilim). Bu modu tespit edemiyorum bile, çünkü bu kontrol: if ($ .browser.msie && parseInt ($. Browser.version)! = 9) {alert ("IE9 değil!"} yapar IE9 uyumluluk modunda olduğu gerçeğini yakalamak değil.
katma yazar Legend, kaynak
Bu uyumluluk ayarını geçersiz kılabileceğini sanmıyorum. stackoverflow.com/questions/3726357/… .
katma yazar Jacob, kaynak
teelahti.fi/blog/… Bu, İç sunucu Uyumluluk sorunumu çözen çok yararlı bir ipucudur. Bütün çözümlerinizi bundan önce denedim.
katma yazar GeorgiG, kaynak
Yerel olarak çalışıyorsanız, hostfile üzerinden 'canlı görünen' bir URL aldığınızdan emin olun ve sitenin bir internet sitesi olduğunu düşünün.
katma yazar sidonaldson, kaynak
Çünkü tam olarak/localhost/web sitesinde çalışan bir web geliştiricisinin işlerini varsayılan olarak IE7 öykünmesinde görmesini ister. Bravo, Microsoft. Tutkal yiyerek devam edin.
katma yazar Imperative, kaynak

Uyumluluk ayarlarını doğrudan IIS'de ayarlayabilirsiniz. Siteyi tıklar ve Yanıt Üstbilgileri açarsanız, X-UA-Compatible öğesini, X'in hedef sürümünüz olduğu IE = X değeriyle ekleyebilirsiniz. Bunu sunucu düzeyinde de ayarlayabilirsiniz. Ancak, aynı kutuda birden fazla siteniz varsa, bunlarla ilgili sorun yaşayabileceğinizi unutmayın. Sunucu düzeyinde başvuruda bulunabildiniz ve sonra da site düzeyindeki devralınan yapılandırmayı silebilirsiniz.

3
katma
Bu benim için çalıştı. jQuery 2 ile bir site geliştirmek için yerel olarak IIS Express kullanıyorum. IE 10 yerel sitenin varsayılan olarak görünüyor gibi görünüyor IE 7 modu ile uyumlu değil. % UserProfile% \ Documents \ IISExpress \ config \ applicationhost.config ve yapılandırma dosyasını açın. msdn.microsoft.com/en-us/ adresine bakın. kütüphane/jj676913 (v = VS.85) .aspx
katma yazar Cameron Taggart, kaynak
Bu, sitenin bir intranet sitesi olduğunu düşünerek IE'yi geçersiz kılmaz!
katma yazar sidonaldson, kaynak

İki yıl ve daha sonra IE'nin iki yeni sürümü ve bu IE8 sorunu hala sorunlara neden oluyor!

Şirketimizin ASP.Net uygulaması için, web sayfalarındaki web.config dosyasında "X-UA-Uyumlu" kelimesinin eklendiğini ya da bunların arkasındaki kodun kesinlikle hiçbir fark yaratmadığını öğrendim.

Bizim için çalışan tek şey, "Uyumluluk Görünümü'ndaki Görüntülü Reklam Ağı intranet kümelerini" onay kutusunun el ile kaldırılmasıydı:

Turn off Display intranet sets in Compatibility View

2
katma
Aynı burada ... tüm kullanıcıların bu onay kutusunu işaretlemesini istemiyorum :(
katma yazar Dot_NET Pro, kaynak

Tuhaf olan şey: runat = "server" 'ı silerseniz, meta etiketi çalışır ve düğme kaybolur. BNutusu runat 'ı silmemeniz önerilir.

0
katma