2011-11-22 32 views
11

Tôi có một trang khiến IE 8 bị lỗi. Tôi đã dìm tất cả các con đường xuống chỉ html/javascript gây ra vụ tai nạn. Tôi biết tôi sẽ phải làm điều gì đó khác để hiển thị trang mà tôi muốn trong IE mà không vi phạm nó. Có ai nhận thức được một cách mà tôi có thể báo cáo điều này cho nhóm IE để có được nó cố định?Tại sao HTML này gặp sự cố IE?

Sự cố xảy ra khi bạn di chuột qua nhịp. Tạo tệp .html đầu để kiểm tra. Sử dụng jsfiddle không làm hỏng nó.

Cập nhật: Đảm bảo IE không ở chế độ tương thích để làm cho nó bị lỗi. Update2: Nó cũng bị treo ở chế độ an toàn, vì vậy nó không phải là một add-on gây ra vấn đề. Tôi đã thử nó trên nhiều máy tính.

<!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

Nó không sụp đổ cho tôi. Hãy thử [liên kết này] (http://jsfiddle.net/kjyvv/) –

+4

IE8 của tôi không bị lỗi trên html này. Hai bình luận đầu tiên là không liên quan và không có cấu trúc. – James

+0

@xbrady, bạn có thể tạo lại sự cố trong [chế độ an toàn] không (http://www.mitchellenright.com/2010/12/28/internet-explorer-safe-mode/)? –

Trả lời

2

Có ai biết cách nào mà tôi có thể báo cáo này cho đội IE để có được nó cố định?

Có, truy cập http://connect.microsoft.com/, nhập "Internet Explorer Feedback Program" vào hộp tìm kiếm và nó sẽ cung cấp cho bạn liên kết để báo cáo lỗi như thế này với nhóm IE. Họ đọc/hành động trên chúng, mặc dù không mong đợi bất cứ điều gì nhanh chóng. Cho dù một lỗi trong một phiên bản cũ của IE được coi là xứng đáng với sửa chữa tôi không biết mặc dù. Nó có thể chỉ là bản sửa lỗi bảo mật vẫn được áp dụng cho IE8 ngày nay, không phải bất kỳ sửa chữa nào sẽ thay đổi hiển thị HTML hoặc hành vi Javascript.

+0

Dường như điều này chỉ hoạt động đối với IE 9/10. Có thể không có cách nào để báo cáo lỗi cho các trình duyệt cũ hơn? Bạn sẽ nghĩ rằng họ sẽ vẫn hỗ trợ IE 8 vì họ quyết định không cho phép cài đặt IE 9+ trên Windows XP. Nếu không ai khác có thể tìm thấy một nơi để báo cáo lỗi IE 8 thì tôi sẽ chỉ đánh dấu đây là câu trả lời. – xbrady

+0

Đủ công bằng, nhưng Kết nối có vẻ giống như cơ chế báo cáo lỗi thích hợp cho nhiều sản phẩm của Microsoft. Nếu họ không chấp nhận nó ở đó, tôi đoán họ sẽ không chấp nhận các báo cáo lỗi theo bất kỳ cách nào khác. Tôi đồng ý rằng bạn nghĩ rằng họ vẫn nên hỗ trợ IE8 trong khi XP sống ít nhất. – mikel

1

Dùng chuột hoặc chuộtNhập bằng jQuery.

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

Ngoài ra phương pháp này bạn đang sử dụng không còn hợp lệ nữa.

+1

Để làm rõ, là câu hỏi "làm cách nào để khắc phục sự cố này?" hoặc "Làm cách nào để báo cáo lỗi cho Microsoft"? Nếu bạn chỉ đang tìm một bản sửa lỗi, tại sao lại sử dụng kịch bản? Chỉ cần sử dụng ': hover' –

+0

Tôi đã sử dụng chức năng di chuột jquery trước đây.Tôi chỉ lột nó ra nơi nó bị rơi IE. $ ('span'). hover ( function() {$ (this) .addClass ('condPartHover');}, function() {$ (this) .removeClass ('condPartHover');} // Vẫn bị treo IE ); – xbrady

+0

Đây là cập nhật className đang kích hoạt sự cố. addClass cập nhật thuộc tính className làm cho nó sụp đổ. – xbrady

0

Loại tài liệu của bạn không chính xác và bạn đang ở chế độ quirks. Nếu bạn phải sử dụng các loại tài liệu được xhtml, sử dụng cái này:

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

Có sự khác biệt rõ rệt giữa các kiểu tài liệu 'strict' và' transition 'mà không nên bỏ qua. – zzzzBov

+0

@zzzzBov - Có nhưng anh ấy không phải là một xhtml chuyển tiếp hợp lệ. Các trang web mới không cần chuyển tiếp và luôn phải sử dụng nghiêm ngặt. http://www.w3.org/QA/2002/04/valid-dtd-list.html – Rob

+1

Tôi không đồng ý hết lòng. Nhiều thuộc tính và giá trị phổ biến được chấp nhận trong 'chuyển tiếp' trong khi không được chấp nhận trong' strict' (ví dụ: '[target =" _ blank "]'). Nếu bạn muốn giới thiệu bất kỳ điều gì, bạn nên giới thiệu loại tài liệu HTML 5: '' – zzzzBov

Các vấn đề liên quan