2017-01-19 38 views
0

我有一個組織結構圖,其中頂級節點的縮放比例爲1.5(所有其他子/節點都設置爲1的縮放比例)。我有一個「展開所有節點」按鈕,當我單擊它時,在出現組織圖之前,我想將頂級節點縮放比例返回到1(因此它與現在展開的節點的大小相同),但是對於我的生活我無法讓它迴歸。on click update css transform:scale()屬性

我試過應用不同級別的特殊性,使用!重要的聲明和各種jQuery hackery,但無濟於事。下面是有問題的代碼:

CSS

/*Top Level Node*/ 
.orgchart .node:first-child { 
    transform: scale(1.5); 
} 

/*All Other Nodes*/ 
tr.nodes td table tr td div.node { 
transform: scale(1) !important; 
} 

jQuery的(包在$(文件)。就緒(函數(){});

'use strict'; 

(function($){ 

    $(function() { 

    var datascource = {...}; 

    var orgChartInstantiation = function() { 

     var options = {...}; 

     // ******************** 
     // Expand all nodes 
     // in company org chart 
     // ******************** 

     $("button#expandNodesButton.btn.btn-default").on("click", function() { 

      // 
      // Code below is what I'm having an issue with 
      // 
      $("div.node.first-level.topLevelNode").css("transform", "scale(1)"); 

      var options = {...}; 

      $("#my-org-chart").empty(); //clear previous contents 
      $("button#expandNodesButton.btn.btn-default").toggle(); //toggle display for corresponding collapse button 
      $("button#collapseNodesButton.btn.btn-default").css("display", "block"); 

      $("#my-org-chart").orgchart(options); 

     }); 

    }; 

    orgChartInstantiation(); 

    }); 

})(jQuery); 

任何與所有的幫助是非常感謝!

+2

所以你的意思是它不是設置「scale(1)」?你確定選擇器是正確的,因爲它不符合CSS選擇器。你能提供一個完整的例子(包括一個jsfiddle)嗎? – musefan

+0

當然,讓我工作,我會暫時發佈。我試過在我的jQuery的CSS中選擇使用選擇器,但這不會工作@musefan – dannyk

+0

啊我修好了......哈哈不真實 – dannyk

回答

0

好,所以我能夠找出一個工作解決方案(雖然也許不是很優雅,但儘管如此)。

而不是試圖通過方法來改變縮減到1做的:

$(".orgchart .node:first-child").css("tranform", "scale(1)"); 

我是能夠做到:

$(".orgchart .node:first-child").css("transform", "none"); 

我不知道我明白爲什麼我沒」只能將比例重置爲1,而不得不使用「變換」,「無」,但會做一些功課並報告回來,如果我發現任何注意事項!