2011-12-14 6 views
8

Tôi đang sử dụng tiện ích con Chosen jQuery từ http://harvesthq.github.com/chosen/. Nó hoạt động tốt trong ứng dụng của tôi trong hầu hết các trình duyệt nhưng nó sẽ không hoạt động trong IE8 trong 'Chế độ xem tương thích'. Đây là vấn đề đối với tôi vì trên mạng nội bộ của công ty của tôi Chế độ xem tương thích là mặc định cho các trang web mạng nội bộ. Bạn có thể kiểm tra vấn đề của tôi bằng cách vào liên kết ở trên và chuyển sang Chế độ xem tương thích trong IE.Tiện ích con chọn jQuery không hoạt động trong Chế độ xem tương thích của IE8

Lý do tôi không hoàn toàn từ bỏ vì đó là vì trên trang này http://davidwalsh.name/dw-content/jquery-chosen.php ai đó làm cho nó hoạt động trong Chế độ xem tương thích trong IE (xem cho chính bạn).

Tôi đang sử dụng jQuery 1.6.2 và Chosen 0.9.5. Windows XP và IE 8.0.6001 trong Chế độ xem tương thích. Nó hoạt động tốt nếu tôi chuyển chế độ trình duyệt sang IE8 trong công cụ Dev nhưng tôi không muốn mọi người dùng phải làm điều đó. Có ai sử dụng plugin này trước đây và nhận nó hoạt động trong Chế độ tương thích trong IE8 không?

<script type="text/javascript"> $("#groupsList").data("placeholder", "Select Groups").chosen();</script> 

Trả lời

7

Bạn biết điều gì đó, tôi đã gặp chính xác cùng một vấn đề ngày hôm nay.

Phiên bản mà David Walsh đang sử dụng làm bản trình diễn là 0.9.1. Có một đoạn mã trong 0.9.5 mà hoàn toàn vô hiệu hóa nó cho MSIE 7 và thấp hơn:

if ($.browser.msie && ($.browser.version === "6.0" || $.browser.version === "7.0")) { 
    return this; 
    } 

Tôi không biết chính xác những gì IE làm trong chế độ tương thích - trong IE9 với chế độ compat, tại ít nhất, làm $.browser.version trả về '7.0'. Điều đó sẽ khiến plugin này chỉ thoát.

Nếu bạn thực sự muốn, bạn có thể vô hiệu hóa séc đó hoặc áp dụng thay đổi mã mà ai đó đã đề xuất trên github issue này. Cách khác, bạn chỉ có thể sử dụng phiên bản 0.9.1 như bản trình diễn của David.

+0

Sau đó, người đã viết plugin đã tìm thấy sự cố với IE7 (chế độ tương thích IE8 giảm xuống gần như ở chế độ IE7). Đọc danh sách các vấn đề về github, có vẻ như một số thứ có chỉ mục z làm cho plugin hoạt động sai. Hãy xem https://github.com/harvesthq/chosen/issues/270 – Alfabravo

+0

Yip - đó là liên kết tôi đã liệt kê. Trong trường hợp của tôi (đẩy thời gian), tôi chỉ chấp nhận rằng đa lựa chọn xuống cấp cho một cái gì đó có thể sử dụng được. Đã không thử bất kỳ tùy chọn nào trong vấn đề đó nhưng khi tôi có thời gian, tôi sẽ có một cái nhìn (nó sẽ rất hay để có được nó trong các trình duyệt cũ hơn) –

+0

Yup nhưng trình duyệt IE (cả 6 và 7) có một số khủng khiếp hành vi kỳ quặc. Chắc chắn nó đòi hỏi một số thời gian thêm để làm cho plugin đó hoạt động. Có thể bạn có thể giúp mọi người ở đó xây dựng thêm một plugin trình duyệt chéo! :) – Alfabravo

14

Tôi cảm thấy nỗi đau của bạn, làm việc cho một trong những công ty đó, chế độ này cũng có chế độ này theo mặc định. Tôi đã từng gặp vấn đề tương tự. thay vì bỏ chọn selected.js, bạn có thể đặt

<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 

để cho IE hiển thị trang có trình kết xuất mới nhất trong trường hợp của chúng tôi IE8.

Câu hỏi cũ, nhưng tôi hy vọng điều này sẽ giúp người khác.

+0

Điều này dường như chỉ hoạt động nếu đó là dòng đầu tiên sau . (IE9) – joshua

+0

đã làm việc cho tôi =) thx! – Tobi