2014-06-24 49 views
3

我一直在使用「Fancytree」在我正在開發的一個項目中,並且一直對它感到滿意,直到今天。我需要在樹中的某些節點上顯示不同的圖標,並且迄今爲止無法讓它們顯示在樹上。自定義節點圖標在Fancytree中不工作

我指定在JSON字符串自定義節點圖標下面我使用加載樹:

[{「標題」:「清單」,「關鍵」:「DocFolders/1026」,」文件夾 「:真,」 數據 「:{」 圖標 「:」 LockedFolder.gif」, 「isLocked」:真}},{ 「標題」: 「遙測」, 「關鍵」: 「DocFolders/1027」, 「文件夾」 :true,「data」:{「icon」:「LockedFolder.gif」,「isLocked」:true}},{「title」:「Well Documents」,「key」:「DocFolders/1028」,「folder」: true,「data」:{「icon」:「LockedFolder.gif」,「isLocked」:true},「expanded」:true,「children」:[{「title」:「4-13 Spectrum Core PG & E Data .xlsx「,」key「:」SpectrumDocs/961「}]},{」title「:」Well Photos「,」key「:」DocFolders/1029「,」folder「:true,」data「:{」icon 「:」LockedFolder.gif「,」isLocked「:true}}]

以下是JavaScript代碼加載樹:

$('#locDocTree').fancytree({ 
    source: fldrObj, 
    imagePath: 'skin-win8', 
    activate: function (event, data) { 
     if (data.node.folder) { 
      $('[id$=txtSelFldrKey]').val(data.node.key); 
      $('[id$=txtDownloadDocId]').val(''); 
     } 
     else { 
      $('[id$=txtDownloadDocId]').val(data.node.key); 
      $('[id$=txtSelFldrKey]').val(''); 
     } 
    } 
}); 

的「LockedFolder.gif」文件是「皮膚win8的」文件夾,如果我走了「圖標」:「LockedFolder。 gif「,JSON樹渲染罰款與默認圖像。當指定圖標屬性時,樹仍然呈現,但文件夾圖標沒有圖像。

以下是頁頭中引用的腳本& css文件。

<link href="fancytree/skin-win8/ui.fancytree.css" rel="stylesheet" type="text/css"> 
<script src="Scripts/json2.js" type="text/javascript"></script> 
<script src="Scripts/jquery-2.1.1.js" type="text/javascript"></script> 
<script src="Scripts/jquery-ui-1.10.4.js" type="text/javascript"></script> 
<script src="fancytree/jquery.fancytree.js" type="text/javascript"></script> 

好像這應該是簡單的,但談到了是一個謎,我...

嗯,這是幾個小時後,我已經成功地回答我的問題。感覺非常愚蠢,但這些事情往往歸結爲這樣的事情。原來我的問題出現在樹的「imagePath」選項中。路徑名稱必須包含以下正斜槓。所以解決的辦法是讓imagePath成爲「skin-win8 /」。此後正常工作。

+0

嗨,你可以請你的答案作爲答案,並將其標記爲已解決? – Tim

+0

好吧,幾個小時後,我設法回答了我自己的問題。感覺非常愚蠢,但這些事情往往歸結爲這樣的事情。原來我的問題出現在樹的「imagePath」選項中。路徑名稱必須包含以下正斜槓。所以解決的辦法是讓imagePath成爲「skin-win8 /」。此後正常工作。 – user3772343

回答

2

好吧,這是幾個小時後,我設法回答我自己的問題。感覺非常愚蠢,但這些事情往往歸結爲這樣的事情。原來我的問題出現在樹的「imagePath」選項中。路徑名稱必須包含以下正斜槓。所以解決的辦法是讓imagePath成爲「skin-win8 /」。此後正常工作。