Lo solucione, para los que tengan el mismo problema:
La librería de mootols contiene dos funciones que tienen el mismo nombre de funciones de la otra librería. Lo que hice fue cambiar el nombre de ambas funciones en la librería InterpretaJS.js
Las funciones eran stripScript y map, la corrección quedó así
Código Javascript
:
Ver originalvar tagScript = '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)';
/**
* Eval script fragment
* @return String
*/
String.prototype.evalScript = function () {
return (this.match(new RegExp(tagScript, 'img')) || []).evalScript();
};
/**
* strip script fragment
* @return String
* striptScript reemplazado por stripScriptPrototype para evitar conflicto
*/
[COLOR="red"]String.prototype.stripScriptPrototype = function () {[/COLOR]
return this.replace(new RegExp(tagScript, 'img'), '');
};
/**
* extract script fragment
* @return String
*/
String.prototype.extractScript = function () {
var matchAll = new RegExp(tagScript, 'img');
return (this.match(matchAll) || []);
};
/**
* Eval scripts
* @return String
*/
Array.prototype.evalScript = function (extracted) {
var s = this.map(function (sr) {
var sc = (sr.match(new RegExp(tagScript, 'im')) || ['', ''])[1];
if (window.execScript) {
window.execScript(sc);
}
else {
window.setTimeout(sc, 0);
}
});
return true;
};
/**
* Map array elements
* @param {Function} fun
* @return Function
* * map reemplazado por mapPrototype para evitar conflicto
*/
[COLOR="Red"]Array.prototype.mapPrototype = function (fun) {[/COLOR]
if (typeof fun !== "function") { return false; }
var i = 0, l = this.length;
for (i = 0; i < l; i++) {
fun(this[i]);
}
return true;
};