2009-02-16 23 views
7

Trong điều khiển chọn OK 6 (hộp tổ hợp) hiển thị trên đầu các menu. Tôi đã kiểm tra một số menu Javascript, mmmenu, nhưng tất cả đều đang được kiểm soát chọn. Nó không thể sửa được bằng cách gán Z-Index. Còn có những giải pháp nào nữa ko.IE 6 chọn điều khiển (Hộp tổ hợp) trên menu

Trả lời

7

Đây là lỗi phổ biến với IE6 với việc cố gắng định vị hoàn toàn các div trên đầu các điều khiển được chọn.

Có các cách giải quyết liên quan đến miếng dán khung nội tuyến, nhưng không có câu trả lời hay. Câu trả lời shim khung nội tuyến là đặt iframe bên dưới bất kỳ div nào bạn đang cố gắng đặt phía trên lựa chọn, với khung nội tuyến có cùng kích thước. Thật không may, đây là một nỗi đau lớn trong ass.

Tôi đề xuất sử dụng hệ thống menu javascript đã sử dụng miếng dán khung nội tuyến, chẳng hạn như YUI menus (và tôi giả sử jQuery).

2

Vấn đề là SELECT là các phần tử "có cửa sổ" trong IE6 và chỉ mục z của chúng ở trên tất cả các thành phần không "cửa sổ" khác. Nếu bạn hoàn toàn phải có thứ gì đó phía trên combox, bạn có thể muốn đặt nó bên trong một cửa sổ khác, chẳng hạn như IFRAME và đặt chỉ mục z của thành phần thành cao hơn so với combobox.

Tôi phải thừa nhận, đây không phải là giải pháp khá.

7

Hầu hết các thư viện javascript chính đều dễ thực hiện các giải pháp cho vấn đề này. Chúng tôi sử dụng jQuery, và bgiframe plugin là rất dễ sử dụng và giải quyết vấn đề.

+1

@jonstjohn - Tuyệt vời! Điều đó làm việc khá tốt - vấn đề duy nhất còn lại với việc sử dụng plugin bgiframe là biên giới của DIV mà tôi vẫn bị che phủ bởi các trình đơn thả xuống. Vì vậy, phần chính của DIV cho thấy trên đầu trang của các dropdowns, nhưng đường viền màu đen (CSS - border: 2 px solid #cecece;) vẫn xuất hiện bên dưới các dropdowns. Bạn đã chạy vào điều này ở tất cả? –

+0

Rất tiếc - không bao giờ. Tôi RTFM và thấy "đầu", "trái", vv bù đắp. –

+0

Có vẻ như "Trên cùng", "Trái", v.v. không làm gì cả. –

3

Daniel chắc chắn là đúng. Đây là một vấn đề xấu.

Tuy nhiên, có thể có giải pháp khác. Nếu bạn đang sử dụng các menu đa tầng bật mở và đóng, bạn có thể viết mã JavaScript theo nghĩa đen ẩn các phần tử SELECT có vấn đề khi cửa sổ bật lên được mở (kiểu phần tử có khả năng ẩn). Sau đó, khi trình đơn đóng, bạn có thể bỏ ẩn cùng một điều khiển SELECT đó.

Sau đó, bạn chỉ cần viết mã để phát hiện đối tượng SELECT nào có được theo cách của một menu cụ thể trước khi nó mở ra. Nó không phải là mã nhỏ, nhưng nó chắc chắn có thể viết. Sau đó, tôi chỉ quấn toàn bộ đoạn mã trong một điều kiện để kiểm tra xem liệu người dùng có đang sử dụng IE vì không cần chạy trên Firefox hay Safari.

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