2012-02-26 67 views
6

Xin vui lòng, hãy nhìn vào mã nàyStrange đường viền màu xanh trên Firefox

http://www.jsfiddle.net/tt13/5CxPr/21

Trên Firefox nó cho thấy đường viền màu xanh kỳ lạ khi bạn chọn nhiều hàng bằng cách nhấn nút ctrl nhưng trên Chrome nó không .

enter image description here

Sử dụng Firefox mới nhất 10.0.2.

Đó có phải là lỗi liên quan đến trình duyệt không?

+1

Isnt rằng một tính năng? Firefox làm nổi bật các phần tử đã chọn với đường viền màu xanh lam. – Alex

+0

Đây có thể là đường viền mà bạn thấy, hãy thử xóa nó. – adeneo

+0

@Alex Dunno. Dù sao, nếu đây là tính năng tôi muốn vô hiệu hóa nó. Câu hỏi là thế nào? –

Trả lời

9

Điều này là do văn bản được lựa chọn - hành vi duyệt bản địa.

Bạn cũng có thể quan sát cùng một vấn đề trong Chrome bằng cách sử dụng phím SHIFT thay vì CTRL.

Để khắc phục điều này, bạn chỉ có thể xóa các lựa chọn ngay sau khi người dùng nhấp vào tế bào để chọn:

$(".subject").live('click',function(event) { 
    if(event.ctrlKey) { 
      $(this).toggleClass('selected'); 
    } else { 
      $(".subject").removeClass("selected"); 
      $(this).addClass("selected");   
    } 
    if (document.selection) 
     document.selection.empty(); 
    else if (window.getSelection) 
     window.getSelection().removeAllRanges(); 
}); 

Updated fiddle.

8

Cố gắng thiết lập CSS tài sản -moz-user-select bảng để vô hiệu hóa các hành vi lựa chọn mặc định:

table { -moz-user-select: none; } 

MDN

+2

Hậu quả tiêu cực của việc này là nó không cho phép chọn văn bản bảng. Không chỉ xóa đường viền khi nhấp vào ô bảng với Ctrl được nhấn. –

+0

@MaratTanalin OOOPSS. Vâng, bạn là sự thật. Giải pháp của bạn là gì? –

+0

@ trl13 giải pháp là để xóa lựa chọn, không ngăn chặn nó - xem câu trả lời của tôi. –

3

Tính năng này hoạt động cho phiên bản hiện tại của Firefox 20.0.1 nếu bạn chuẩn bị thêm phần tử phụ bên trong ô để cho phép văn bản vẫn có thể chọn được.

td { -moz-user-select: -moz-none } 
td * { -moz-user-select: text } 

http://jsfiddle.net/nukj7/

+0

Làm thế nào để bạn đối phó với nhiều hàng? Tôi có một bảng có nhiều hàng. Với giải pháp của bạn, tôi chỉ có thể chọn một td trong một hàng. Bạn có thể cung cấp giải pháp không? Cảm ơn trước – webprogrammer

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