当前位置: 首页 > 知识库问答 >
问题:

如果不支持svg,则退回到html-css

方光华
2023-03-14

我正在使用MathJax在浏览器中呈现mathml标记。我使用TeX-AMS-MML_SVG配置在Chrome上运行良好,但在IE8中不起作用。

如果我切换到TeX-AMS-MML_HTMLorMML,它在所有浏览器中都能正常工作。不过,SVG渲染看起来要好得多,所以在可能的情况下,我希望这是首选。

MathJax是否内置了支持这一点的功能?它似乎可以从MML回退到HTML,但不能从SVG回退到HTML。我可以通过javascript检查SVG的支持,但我希望MathJax配置中已经有我遗漏的东西。

这是常见配置的留档。我正在寻找类似MML_SVGorHTML配置的东西。

共有3个答案

顾淳
2023-03-14

你可以使用沃尔特·佐恩的绘图库。它将一切渲染为DIV。

赵嘉纳
2023-03-14

我目前正在测试这个方法,手动检查svg支持:

function supportsSvg() {
    return !!document.createElementNS && 
        !!document.createElementNS('http://www.w3.org/2000/svg', "svg").createSVGRect;
}

var mathjaxConfig = (supportsSvg()) ? 'TeX-AMS-MML_SVG' : 'MML_HTMLorMML';

然后,可以将mathjaxConfig正常插入url:

"../MathJax.js?config=" + mathjaxConfig
黄沈浪
2023-03-14

请参阅MathJax用户论坛上的讨论,其中介绍了一种方法。大体上

    <script type="text/x-mathjax-config">
    if (MathJax.Hub.Browser.isMSIE && (document.documentMode||0) < 9) {
      MathJax.Hub.Register.StartupHook("End Config",function () {
        var settings = MathJax.Hub.config.menuSettings;
        if (!settings.renderer) {settings.renderer = "HTML-CSS"}
      });
    }
    </script>

处理IE的旧版本,这是目前唯一不做SVG的浏览器。

 类似资料:
  • 在我的flutter应用程序中,我导入了flutter库。然而,这个库目前不支持flutter Web。图书馆不是我的应用程序使用的必要条件。 主要问题:是否有任何方法来检查导入的库是否不受支持,然后在这种情况下我可以删除部分UI和代码?

  • 好吧,我已经想了两天了,但这对我来说毫无意义。所以我有一个注册表用户名,电子邮件,密码和重新输入密码。每个输入都有JavaScript,在每个keyup上都会将用户输入发送到php,在php中进行验证,并在密码下方的div中显示“Good”,div是“password\u feedback”(这一切都很好,如果我输入有效密码,它将在“password feedback”div中显示“Good”)

  • (我使用的是STIX字体,但这个问题也与TeX字体有关。) 我的问题是:如何在我的网页上配置mathjax,以便查看网页的用户体验以下1- 超文本标记语言-CSS(webFont"STIX-Web",本地"STIX") SVG("STIX-Web") 所有其他回退选项(本地通用,映像等) 换句话说,我们的想法是将HTML-CSS作为首选,但如果HTML-CSS失败,那么就回到SVG,而不是本地通用

  • 问题内容: 我有以下选择语句,以获取流的下一个预定项目。如果没有匹配的行,我希望它返回默认值。这是我正在使用的行: 那应该可以获取最近计划的项目,但如果它早于查询之前30分钟,则不会。但是,如果用户未安排任何时间,则我需要一个默认值,以便流中实际播放某些内容。我尝试了以下方法: 和: 但是,如果未找到任何行,它将始终返回空结果。我该如何返回默认值? 问题答案: 一种方法 由于只返回一行,因此可以使

  • 我的应用程序在java web应用程序中执行一些REST请求。这些请求都是CORS请求,所以浏览器每次都要在实际选项之前执行选项预置。每个请求都类似于 对于谷歌chrome来说,请求是ok的,内容就会显示出来。

  • 问题内容: 我实际上是REST WS的新手,但实际上我不明白这一点。 我正在Firefox上用Poster测试我的REST,并且对我来说也很好用(当它是时),但是当我尝试它完全无法到达WS时,服务器会拒绝它。 这是我的网址:http:// localhost:8081 / RestDemo / services / customers / add 这是我发送的: 这是我发送的: 这是我的Resou