commit 1044df807678daf61a91fdc3f5e93c6ab7d03680
parent de9c66f927b16dac381cd432da88be23b5a24fe4
Author: Davide P. Cervone <dpvc@union.edu>
Date: Sun, 28 Dec 2014 07:11:34 -0500
When processing an array of elements, don't add any that are already included in the list.
Diffstat:
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/unpacked/MathJax.js b/unpacked/MathJax.js
@@ -2383,8 +2383,12 @@ MathJax.Hub = {
elementScripts: function (element) {
var scripts = [];
if (element instanceof Array || this.isHTMLCollection(element)) {
- for (var i = 0, m = element.length; i < m; i++)
- {scripts.push.apply(scripts,this.elementScripts(element[i]))}
+ for (var i = 0, m = element.length; i < m; i++) {
+ var alreadyDone = 0;
+ for (var j = 0; j < i && !alreadyDone; j++)
+ {alreadyDone = element[j].contains(element[i])}
+ if (!alreadyDone) scripts.push.apply(scripts,this.elementScripts(element[i]));
+ }
return scripts;
}
if (typeof(element) === 'string') {element = document.getElementById(element)}