无法确定代码中错误出现在哪里。 Chrome 调试控制台一直显示 "Uncaught TypeError: Cannot call method 'addEventListener' of undefined",位于第31行!
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
};
;}) ();
bind()
的代码和定义element
的代码。 - Teemu