无法找出此代码中的错误。 Chrome调试控制台在第31行不断说“未捕获的TypeError:无法调用未定义的方法'addEventListener'”!

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
    };
;}) ();

最佳答案

就我而言,这是由Evernote Clipper扩展脚本引起的。单击该脚本抛出错误,您将在注释中找到“Evernote”。

关于javascript - 未捕获的TypeError : Cannot call method 'addEventListener' of undefined,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10189890/

10-10 00:08