2015-11-06 59 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); 
      }); 
     } 
相關問題