【问题标题】:Chrome is very slow to apply a style sheet when switching in javascript切换到 javascript 时,Chrome 应用样式表的速度很慢
【发布时间】:2016-02-07 03:15:25
【问题描述】:

我有一段 javascript 可以在单击按钮时切换页面的样式表。它在 IE 和 Firefox 中运行良好且流畅,但在 Chrome 中运行速度非常慢。重新渲染大约需要 30 秒,这在我的开发机器上。加载时间只有几毫秒。我已经在 angularjs 中使用 ng-href 进行了尝试,并将样式表文件名绑定到范围变量,但在 Chrome 中结果不佳。然后我包含了 jquery 并这样做了

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

在 IE 和 FF 中同样有效,但在 Chrome 中大约需要 30 秒。

最好的方法是什么?

谢谢

【问题讨论】:

  • 最后我把它作为一个指令:

标签: javascript jquery css angularjs google-chrome


【解决方案1】:

最后,我将其作为一个名为“active-sheet”的指令执行,并操作了“disabled”属性。适用于 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);
            });
         }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多