如何在angularJS中从其他页面停止MathJax

时间:2015-03-12 09:13:22

标签: javascript angularjs mathjax

我有一种情况,我注意到每次加载包含mathjax的页面时,当我使用另一个mathjax转到其他页面时,我将等待将近2分钟加载。我的观点是,在当前页面中渲染公式之前,mathjax首先从另一页加载所有公式......

我真的不知道我的所作所为,因为这只是我的观点,但我注意到了。

我正在使用angularJS,这是我在指令中的代码:

app.directive("mathjaxBind", function () {
    return {
        restrict: "A",
        controller: ["$scope", "$element", "$attrs",
            function ($scope, $element, $attrs) {
                $scope.$watch($attrs.mathjaxBind, function (texExpression) {
                    $element.html(texExpression);
                    MathJax.Hub.Queue(["Typeset", MathJax.Hub, $element[0]]);
                });
            }]
    };
});

这个问题可能是什么原因造成的?如果我的观点是正确的,如果我现在在下一页中,如何停止呈现mathjax

1 个答案:

答案 0 :(得分:1)

尝试在每次加载公式时更新mathjax。我所做的是我的首字母更新每次重复。

我这样做..

<a mathjax-bind="competency.competencyDescription" data-ng-init="UpdateMathJax()">

$scope.UpdateMathJax = function () {
        MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
    };

我希望它会对你有所帮助。