2011-11-22 20 views
11

IE 8'in çökmesine neden olan bir sayfam var. Sadece çökmesine neden olan html/javascript'in sonuna kadar dumbledim. Biliyorum IE'de istediğim sayfanın nasıl kırıldığını göstermek için farklı bir şey yapmak zorunda kalacağım. Bunu düzeltmek için IE ekibine bildirebileceğim bir yolun farkında olan var mı?Bu HTML neden IE'ye çarpıyor?

Yığın, farenin üzerine geldiğinizde meydana gelir. Sınamak için bir çizik .html dosyası oluşturun. Jsfiddle kullanmak onu çakmaz.

Güncelleme: IE'nin çökmesini sağlamak için uyumluluk modunda olmadığından emin olun. Update2: Güvenli modda da çöküyor, bu nedenle soruna neden olan bir eklenti değil. Birden çok bilgisayarda denedim.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head> 
<title>test</title> 
    <style type="text/css"> 
     .condPartHover 
     { 
      border-color: #000000; 
      background-color: #E5F0F9; 
      color: #1D5987; 
     } 
    </style> 
</head> 
<body> 
    <ul> 
    <li> 
     <div>Testing: 
      <div style="position:relative; display:inline-block; height:25px;"> 
       <span style="position:absolute; top:0px; left:0px; border:1px solid #000000; background-color:White;" onmouseover="this.className = 'condPartHover';">test 
       </span> 
      </div> 
     </div> 
    </li> 
    </ul> 
</body> 
</html> 
+0

Bu benim için çökmez. [Bu bağlantıyı deneyin] (http://jsfiddle.net/kjyvv/) –

+4

IE8'm bu html'de çökmez. İlk 2 yorum alakasız ve yapıcı değildir. – James

+0

@xbrady, kazayı [güvenli mod] 'da yeniden üretebilir misiniz (http://www.mitchellenright.com/2010/12/28/internet-explorer-safe-mode/)? –

cevap

2

onu düzelttirmek almak için IE ekibine bu bildirebilirsiniz bir şekilde farkında mı?

Evet, http://connect.microsoft.com/ gidin, arama kutusuna "Internet Explorer Geri Bildirim Programı" girin ve size IE ekibine böyle hataları bildirmek için bir bağlantı vereceğiz. Bir şeyleri çabuk beklemiyor olsalar da, okurlar/hareket ederler. IE'nin eski bir sürümünde bir hata olup olmadığını tamir etmeye layık görülüyor olsa da bilmiyorum. Günümüzde yalnızca IE8'e uygulanan güvenlik düzeltmeleri olabilir; HTML oluşturma veya Javascript davranışını değiştirecek herhangi bir düzeltme söz konusu değildir.

+0

Görünüşe göre bu sadece IE 9/10 için çalışıyor. Belki eski tarayıcılar için hataları bildirmenin bir yolu yoktur? IE 8'i Windows XP'de yüklemeye izin vermeyecekleri için IE 8'i hala destekleyeceklerini düşünürdünüz. Eğer kimse IE 8 hatalarını bildirecek bir yer bulamazsa, bunu sadece cevap olarak işaretleyeceğim. – xbrady

+0

Yeterince adil, ancak Connect birçok Microsoft ürünü için uygun hata raporlama mekanizması gibi görünüyor. Orada kabul etmezlerse, hata raporlarını başka şekilde kabul etmeyeceklerini tahmin ediyorum. En azından XP çalışırken, IE8'i desteklemeleri gerektiğini düşünürsünüz. – mikel

1

Fare ile deneOver veya mouseEğ jQuery ile giriş yapın.

$('span').mouseover(function() { 
    $('span').addClass("condPartHover"); 
}); 

Ayrıca, kullandığınız bu yöntem artık HTML geçerli değil.

+1

Açıklamak gerekirse, "Bunu nasıl düzeltirim?" veya "Hatayı Microsoft'a nasıl bildiririm"? Sadece bir düzeltme arıyorsanız, neden bile komut dosyası kullanıyorsunuz? Sadece kullanın: hover' –

+0

Daha önce jquery hover işlevini kullanıyordum.Sadece IE'ye çarptığı yere çıkardım. $ ('span'). hover ( function() {$ (this) .addClass ('condPartHover');}, function() {$ (this) .removeClass ('condPartHover');} // Hala çöküyor IE ); – xbrady

+0

Kaza tetikleyen className güncelleştirmesidir. addClass, kazaya neden olan className özelliğini güncelleştirir. – xbrady

0

Sizin doctype'unuz yanlış ve quirks modundasınız. Eğer xhtml Doctype'ı kullanmanız gerekiyorsa, kullanın bu bir:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
+0

Gözardı edilmemesi gereken 'katı' ve 'geçiş' doktrinleri arasında belirgin bir fark vardır. – zzzzBov

+0

@zzzzBov - Evet, ancak geçerli bir xhtml geçiş dönemi de değil. Yeni web sayfalarının geçişe hiç gerek yok ve her zaman sıkı bir şekilde kullanılmalıdır. http://www.w3.org/QA/2002/04/valid-dtd-list.html – Rob

+1

Bütün kalbimle katılmıyorum. Çok kullanılan öznitelikler ve değerler 'geçiş' içinde kabul edilebilir değilken 'geçiş' olarak kabul edilebilir (örneğin: [[target = "_ blank"] '). Bir şey önerecekseniz, HTML 5 doctype'ı önermeniz gerekir: '' – zzzzBov