09/09/2010, 15:02
|
| | Fecha de Ingreso: diciembre-2009 Ubicación: Valparaíso
Mensajes: 118
Antigüedad: 14 años, 11 meses Puntos: 3 | |
Respuesta: Mootols conflicto con interpretador de JS Cita:
Iniciado por javiercitox 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 */ String.prototype.stripScriptPrototype = function () { 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 */ Array.prototype.mapPrototype = function (fun) { if (typeof fun !== "function") { return false; } var i = 0, l = this.length; for (i = 0; i < l; i++) { fun(this[i]); } return true; };
|