Tôi đang sử dụng thuộc tính CSS content
để chuyển một số giá trị từ biểu định kiểu LESS sang JavaScript (để sử dụng một số màu được xác định trong LESS trong Canvas yếu tố). Để làm cho cuộc sống của tôi dễ dàng hơn, tôi quyết định đặt các giá trị này một cách dễ dàng để phân tích cú pháp chúng trong JavaScript. đang
LESS:
div#colorChart-critical {
content:'@{critical-highest},@{critical-veryhigh},@{critical-high},@{critical-low},@{critical-medium},@{critical-verylow}';
}
mà khi biên soạn mang CSS sau đây:
div#colorChart-critical6 {
content: '#ff0000,#ff7200,#fffc00,#0000ff,#a200ff,#00ff00';
}
Sau đó, tôi cố gắng đọc chúng bằng cách sử dụng jQuery:
$("div#colorChart-critical").css("content").split(",");
Vấn đề là ở Cuộc gọi IE9 $("div#colorChart-critical").css("content")
đang trả về chuỗi "normal"
vì một số lý do. Opera, Firefox, Safari và Chrome hoạt động tốt.
Tại sao điều này xảy ra trong IE9?
Mọi sự cố xung quanh vấn đề này trên IE9? Nếu không có bất kỳ CSS nào khác, tôi có thể đưa các văn bản ngẫu nhiên vào?
tôi có thể sử dụng một cái gì đó như:
background: url(#ff0000,#ff7200,#fffc00,#0000ff,#a200ff,#00ff00);
Nhưng điều này sẽ tạo ra lỗi trên giao diện điều khiển.
cách tiếp cận rất thú vị, nhưng tôi không thể không nghĩ rằng CSS chỉ là không có nghĩa là cho loại điều . Dù sao bạn chỉ có thể có một cách tiếp cận khác nhau? –
Tôi không tin rằng bạn có thể đọc các giá trị CSS một cách đáng tin cậy theo cách đó. Trình duyệt sẽ phân tích cú pháp biểu định kiểu trước và có thể xóa/sửa đổi các giá trị theo ý mình. Nếu không có gì khác, không đảm bảo rằng một số chức năng bạn đang dựa vào sẽ không thay đổi trong bản cập nhật sau. –
@ ZachL Thực ra nó không có nghĩa là làm những việc như thế này. Tôi muốn làm điều này theo cách này vì mã LESS của tôi tạo ra nhiều giao diện cho trang web của tôi nên không thực tế để thiết lập màu theo cách thủ công trong javascript. – Hoffmann