2012-06-19 17 views
5

Tôi đang cố gắng tìm hiểu cách thay đổi biểu tượng của nút JStree chỉ bằng css? Có rất nhiều bài viết giải thích về việc làm điều đó với javascript nhưng tôi thích chỉ sử dụng css.Làm thế nào để thay đổi biểu tượng của một nút JStree chỉ sử dụng css?

Dưới đây là mã của tôi cho đến nay:

$("#treeview").jstree().on('loaded.jstree', function() 
{ 
    $("#treeview").jstree('open_all'); 
}); 

Và Html:

<div id="treeview"> 
    <ul> 
    <li> 
     <a href="#">abcdefghijkl</a> 
     <ul> 
     <li> 
      <a href="#" onclick="goTo('index.php?module=klimaat&amp;pagina=dashboard&amp;id=6',false);"> 
      Beneden</a> 
     </li> 
     <li> 
      <a href="#" onclick="goTo('index.php?module=klimaat&amp;pagina=dashboard&amp;id=7',false);"> 
      Boven</a> 
     </li> 
     </ul> 
    </li> 
    </ul> 
</div> 

Đối với CSS Tôi đang sử dụng style sheet mặc định cung cấp bởi jstree. Các tài liệu được cung cấp bởi jstree thực sự là crappy. Vì vậy, stackoverflow là một trợ giúp lớn, nhưng tôi không thể tìm thấy điều này trên trang web.

Nếu bạn cần thêm mã hoặc thông tin, vui lòng hỏi. Cảm ơn

Trả lời

6

Bạn chỉ cần phải bao gồm này trong CSS:

a .jstree-icon 
{ 
    background-image: url("yourimage.png")!important; 
    background-position: 0!important; 
} 

This is a fiddle làm việc một cách chính xác (cập nhật 2016):

+1

Cảm ơn, tôi sẽ cố gắng này sau ngày này khi tôi có thể . Hy vọng nó hoạt động sau đó tôi sẽ ngoại trừ câu trả lời của bạn;) – RTB

+1

Câu trả lời của bạn không hoạt động hoàn toàn cho tôi vì vậy tôi đã thay đổi thành số này .jstree-default li a ins { nền: url ("../ images/icoons/search.png ") 0px 0px không lặp lại! quan trọng; } – RTB

+0

Trả lời là khá cũ, jsfiddle không hoạt động, nhưng nó vẫn ok. Tôi cũng có thể khuyên bạn nên sử dụng thuộc tính biểu tượng của json phản hồi và vượt qua có tên lớp css. –