2017-01-19 34 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,而不得不使用“变换”,“无”,但会做一些功课并报告回来,如果我发现任何注意事项!