2011-06-20 156 views
1

我正在使用SlickGrid,並且想知道是否有一種方法來設置並保留一般行的不透明或CSS樣式。SlickGrid設置行不透明度

例如,我的行中有一個複選框,當用戶將複選框設置爲選中狀態時,將設置該行的不透明度。但是,當用戶點擊該行時,SlickGrid會移除不透明度設置。

如果有人知道如何去做,一個選擇是在SlickGrid完成其重新渲染後設置行的不透明度。這將讓我在整個電網使用jQuery的下面:

$('img[src="slickgrid/images/tick.png"]').parent().parent().css('opacity','0.4'); 

回答

2

萬一其他人試圖做同樣的事情,我添加了一個後通過執行以下操作渲染事件: 增加了一個新的方法SlickGrid的API部分,然後訂閱該方法並實現jQuery更新不透明度。然後我觸發了SlickGrid的render()方法。

要多一點明確:

在「公共API」部分中的slick.grid.js我添加了一個新的事件:

"onPostRenderJob": new Slick.Event(), 

然後我更新了渲染()函數在同一個文件:

function render() { 
     // all the standard code here... 
     trigger(self.onPostRenderJob); 
    } 

在這種配置我訂閱了該事件的網格頁面:

grid.onPostRenderJob.subscribe(function(e, args) { 
       $('img[src="slickgrid/images/tick.png"]').parent().parent().css('opacity', '0.4'); 
      }); 
+0

偉大的解決方案!你可以將它發送給SlickGrid作者嗎?我認爲所有版本都需要包含。 –

+0

@Dave你知道嗎,如果這已經在「標準」SlickGrid中實現?從目前的來源看,我不能發現任何明顯的後期渲染。你有沒有聯繫Tin? – snies

+0

@Dave你也知道,你的補丁如何表現異步渲染? – snies