启动选项

这个 startup 组件负责创建mathjax所需的对象来执行页面的数学排版,并设置为此可能需要调用的方法。它使用 startup 在配置对象中阻止。


配置块

在下面的例子中, Startup 代表 MathJax.startup 对象,为了简洁。

MathJax = {
  startup: {
    elements: null,          // The elements to typeset (default is document body)
    typeset: true,           // Perform initial typeset?
    ready: Startup.defaultReady.bind(Startup),          // Called when components are loaded
    pageReady: Startup.defaultPageReady.bind(Startup),  // Called when MathJax and page are ready
    document: document,      // The document (or fragment or string) to work in
    invalidOption: 'warn',   // Are invalid options fatal or produce an error?
    optionError: OPTIONS.optionError,  // Function used to report invalid options
    input: [],               // The names of the input jax to use from among those loaded
    output: null,            // The name for the output jax to use from among those loaded
    handler: null,           // The name of the handler to register from among those loaded
    adaptor: null            // The name for the DOM adaptor to use from among those loaded
  }
};

选项说明

elements: null

这也不是 null 或者一个dom元素数组,其内容应该是排版的。元素可以是实际的dom元素,也可以是为要排版的元素提供css选择器的字符串。

typeset: true

这决定了当页面准备好时是否应该执行初始排版操作。

ready: MathJax.startup.defaultReady.bind(Startup)

这是在mathjax加载并准备就绪时调用的函数。它是由 加载器 当所有组件都加载时。默认操作是创建mathjax所需的所有对象,并设置对 pageReady() 功能如下。如果要修改设置过程,可以重写此函数;请参见 在启动期间执行操作 更多细节。请注意,此函数可能在页面完成之前调用,因此除非修改由 startup 模块,更换 pageReady() 也许是更好的选择。

pageReady: MathJax.startup.defaultPageReady.bind(Startup)

这是一个函数,当MathJax准备就绪并可以处理页面时,将调用该函数。默认操作是执行页面的初始排版并返回解析完成内容的promise,但是您可以重写它以执行您想要的任何操作,尽管您不允许从 MathJax.startup.defaultPageReady() 函数。看到了吗 在启动期间执行操作 有关如何执行此操作的详细信息和示例。

document: document

这是要处理的文档(或序列化html的片段或字符串)。默认情况下(在浏览器中使用),它是浏览器文档。当没有全局 document 变量,它是一个空的HTML文档。

invalidOption: 'warn'   // or 'fatal'

这将确定无效选项是否会导致致命错误(当设置为 'fatal' )停止MathJax运行,或发出警告(设置为 'warn' ),这使得MathJax得以继续。在3.2版之前,无效选项是致命的,但此选项现在允许控制该行为。

optionError: OPTIONS.optionError

此选项提供一个函数,每当用户提供无效选项时都会调用该函数。它接受两个字符串参数,第一个是消息,第二个是无效选项的名称。默认函数查看 invalidOption 值,如果是 'fatal' 它使用给定的消息抛出一个错误,否则它会将该消息记录到浏览器控制台,从而允许进一步处理选项。

input: []

这是要使用的输入处理器的名称数组,来自已加载的处理器。因此,如果您已经为多个输入jax加载了代码,但是只想使用 tex 例如,input jax将其设置为 ['tex'] . 如果设置为空数组,则使用所有加载的输入jax。

output: null

这是要从已加载的输出处理器中使用的输出处理器的名称。因此,如果您已经为多个输出jax加载了代码,但是只想使用 svg 例如,output jax将其设置为 'svg' . 如果设置为 null 或者空字符串,则将使用加载的第一个输出jax。

handler: null

这是要从已加载的文档处理程序中使用的文档处理程序的名称。目前,只有一个处理程序,html处理程序,所以除非您创建自己的处理程序,否则将其保留为 null .

adaptor: null

这是要使用的dom适配器的名称,来自已加载的适配器。默认情况下,组件加载 browser 适配器,但您可以加载 liteDOM 用于 node 应用程序;如果您这样做,它将设置此值以便自动使用。