2015-11-06 62 views
1

我有一段JavaScript来切换页面样式表的按钮单击。它在IE和Firefox中可以正常工作,但在Chrome中非常慢。大约需要30秒重新渲染,这在我的开发机器上。加载时间仅为几ms。我已经在angularjs中使用ng-href尝试了这一点,并将样式表文件名绑定到范围变量,但在Chrome中效果不佳。然后我包括jQuery和做了这样Chrome浏览器在切换到javascript时应用样式表非常缓慢

var sheetName = "Content/RPNCalc-" + sizes[size] + ".css"; 
    angular.element("link[rel='stylesheet']").attr("href", sheetName); 

再次在IE工作花花公子& FF,但在Chrome大约需要30秒。

这样做的最好方法是什么?

由于

+0

最后我做了一个指令: – AdamW

回答

0

在我到底这是一个所谓的“活性表”指令和操纵的“禁用”属性。在IE中工作FF & Chrome

<link rel="stylesheet" type="text/css" active-sheet="small" href="Content/RPNCalc-small.css" /> 
    <link rel="stylesheet" type="text/css" active-sheet="big" href="Content/RPNCalc-big.css" /> 

link: function (scope, element, attrs) { 
      scope.$on("sizeClick", function (_e, _size) { 
       element.prop("disabled", _size != attrs.activeSheet); 
      }); 
     } 
相关问题