no se puede averiguar dónde está el error en este código. La consola de depuración de Chrome sigue diciendo "UnEught TypeError: no se puede llamar al método 'addEventListener' de undefined" en la línea 31.TypeError no detectado: no se puede llamar al método 'addEventListener' de undefined
jewel.dom = (function() {
var $ = Sizzle;
function hasClass(el, clsName){
var regex = new RegExp("(^|\\s) + clsName + (\\s|$)");
return regex.test(el.className);
}
function addClass(el, clsName) {
if (!hasClass(el,clsName)) {
el.className += ""+ clsName;
}
}
function removeClass (el, clsName) {
var regex = new RegExp("(^|\\s)" + clsName + "(\\s|$)");
el.className = el.className.replace(regex, " ");
}
function bind(element, event, handler) {
if (typeof element == "string") {
element = $(element)[0];
}
element.addEventListener(event, handler, false)
}
return {
$:$,
hasClass : hasClass,
addClass : addClass,
removeClass : removeClass,
bind : bind
};
;})();
'element' no existe. Por favor, publique el código que llama a 'bind()' y el código que define 'element'. – Teemu
¡Lo encontré! Fue en otro guión el problema. He usado google chrome developer console e rastreé la devolución de llamada en el script correcto: D –