Skip to content

Commit

Permalink
Merge branch 'v2.3-latest'
Browse files Browse the repository at this point in the history
  • Loading branch information
dpvc committed Nov 21, 2013
2 parents e46a997 + 7dc4bc7 commit 228de0a
Showing 1 changed file with 19 additions and 5 deletions.
24 changes: 19 additions & 5 deletions unpacked/extensions/mml2jax.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,12 +53,11 @@ MathJax.Extension.mml2jax = {
//
// Handle all math tags with no namespaces
//
mathArray.push.apply(mathArray,element.getElementsByTagName("math"));
this.PushMathElements(mathArray,element,"math");
//
// Handle math with namespaces in XHTML
//
if (element.getElementsByTagNameNS)
{mathArray.push.apply(mathArray,element.getElementsByTagNameNS(this.MMLnamespace,"math"))}
this.PushMathElements(mathArray,element,"math",this.MMLnamespace);
//
// Handle math with namespaces in HTML
//
Expand All @@ -71,7 +70,7 @@ MathJax.Extension.mml2jax = {
for (i = 0, m = document.namespaces.length; i < m; i++) {
var ns = document.namespaces[i];
if (ns.urn === this.MMLnamespace)
{mathArray.push.apply(mathArray,element.getElementsByTagName(ns.name+":math"))}
{this.PushMathElements(mathArray,element,ns.name+":math")}
}
} catch (err) {}
} else {
Expand All @@ -83,13 +82,28 @@ MathJax.Extension.mml2jax = {
for (i = 0, m = html.attributes.length; i < m; i++) {
var attr = html.attributes[i];
if (attr.nodeName.substr(0,6) === "xmlns:" && attr.nodeValue === this.MMLnamespace)
{mathArray.push.apply(mathArray,element.getElementsByTagName(attr.nodeName.substr(6)+":math"))}
{this.PushMathElements(mathArray,element,attr.nodeName.substr(6)+":math")}
}
}
}
this.ProcessMathArray(mathArray);
},

PushMathElements: function (array,element,name,namespace) {
var math, preview = MathJax.Hub.config.preRemoveClass;
if (namespace) {
if (!element.getElementsByTagNameNS) return;
math = element.getElementsByTagNameNS(namespace,name);
} else {
math = element.getElementsByTagName(name);
}
for (var i = 0, m = math.length; i < m; i++) {
var parent = math[i].parentNode;
if (parent && parent.className !== preview && !math[i].prefix === !namespace)
{array.push(math[i])}
}
},

ProcessMathArray: function (math) {
var i, m = math.length;
if (m) {
Expand Down

0 comments on commit 228de0a

Please sign in to comment.