.. _startup-sequence: **************************** The MathJax Startup Sequence **************************** When you load ``MathJax.js`` into a web page, it configures itself and immediately begins loading the components it needs. As MathJax starts up, it uses its :ref:`signaling mechanism ` to indicate the actions that it is taking so that MathJax extensions can tie into the initialization process, and so other applications within the page can synchronize their actions with MathJax. The startup process performs the following actions: - It creates the ``MathJax`` variable, and defines the following subsystems: - ``MathJax.Object`` (object-oriented programming model) - ``MathJax.Callback`` (callbacks, signals, and queues) - ``MathJax.Ajax`` (file-loading and style-creation code) - ``MathJax.HTML`` (support code for creating HTML elements) - ``MathJax.Message`` (manages the menu line in the lower left) - ``MathJax.Hub`` (the core MathJax functions) .. - It then creates the base ``MathJax.InputJax``, ``MathJax.OutputJax``, and ``MathJax.ElementJax`` objects. .. - MathJax sets up the default configuration, and creates the signal objects used for the startup and hub actions. .. - MathJax locates the ``