## We Use MathJax

For years, we have wanted to use the power of MathML (Math Markup Language) on our web pages, but the lack of native support by some commonly used browsers (especially Internet Explorer) kept us away from fulfilling that desire. We could have insisted that our users get the appropriate plugins to read our pages, but that extra requirement would have chased some of our users away. But now, MathJax software provides the ability to use MathML, provides an alternative display for use by browsers that do not natively support MathML, and even provides a screen reader option for those who need or want the mathematics spoken. All of the necessary software resides on servers, and no browser plugins are needed.

Internally, the mathematics on our site is coded as LaTeX, a typesetting language very popular among mathematical authors for its ease of use, its platform independence, and its ability to handle very complicated expressions. The LaTeX coding resides in the HTML page. JavaScript is used to identify and interpret the LaTeX expressions. For browsers that can interpret MathML, MathJax can translate the LaTeX code and pass it back to the browser for display, and this will happen very quickly. For browsers that can not interpret MathML (and don't have a plugin for that purpose), MathJax will use HTML and CSS to display the mathematics. Currently (as of May, 2012), the HTML-CSS display is somewhat slower than the MathML display.

$x = \dfrac{-b \pm \sqrt{b^2-4ac}}{2a}$

MathJax also provides ways to access and interact with the mathematics. If you point at some mathematics with your cursor (like the quadratic formula above), and right-click (or on a Mac, control-click), a pop-up menu will appear, as shown in the image below.

Here are short descriptions of what some of the options provide.

• "Show Math As" allows you to copy the code (either HTML or TeX) used to create that piece of mathematics.
• "Math Settings" provides several options.
• "Zoom Trigger" and "Zoom Factor" allow you to view individual mathematics on the page in an enlarged (or smaller) font.
• "Math Renderer" allows you to switch between HTML-CSS, MathML, and SVG renderings of the mathematics.
• "MathPlayer" is an option when Internet Explorer is used, and MathPlayer is installed. This will provide the ability for the mathematics to be spoken by your computer. When you choose this option, MathPlayer will provide the menu rather than MathJax. To obtain the MathJax menu again, Alt-Shift-Click on some mathematics.
• "Scale All Math ..." allows you to change the display size of all the mathematics on the page at once.
• "About MathJax" will give the version number being used. We are transitioning this site to use the Content Delivery Network, which provides the latest stable release.
• "MathJax Help" is a link to the user page at the MathJax web site.