Javascript preventDefault无效,也不返回false;

Jav*_*rez 0 javascript events javascript-events

我在发布之前已经在stackoverflow中搜索了这个问题,但任何发布的帖子似乎对我有用:(

我有这个:

function addEvent(elm, evType, fn) {
    if (elm.addEventListener) {
        elm.addEventListener(evType, fn, false);
        return true;
    }
    else if (elm.attachEvent) {
        var r = elm.attachEvent('on' + evType, fn);
        return r;
    }
    else {
        elm['on' + evType] = fn;
    }
}
Run Code Online (Sandbox Code Playgroud)

我这样做:

var el = document.getElementById('myLink');

addEvent(el, "click", function(event){
         alert('testing');
        if(event.preventDefault){
            event.preventDefault;
        }
         if (event.stopPropagation) {
            event.stopPropagation();
         }
        return false;
    });
Run Code Online (Sandbox Code Playgroud)

myLink在哪里..

<a href="http://www.google.com" id="myLink">Click me</a>
Run Code Online (Sandbox Code Playgroud)

但是当我点击de link时,它并没有停止默认的事件动作......我已经在IE,FF和Chrome上测试了,没有结果......

有什么想法吗?谢谢...

Ivo*_*zel 5

代码中有几个错误:

addEvent(el, "click", function(event){ // event will be undefined in IE
    event = event || window.event; // fallback to window.event in IE

    alert('testing');
    if(event.preventDefault){
        event.preventDefault(); // () was missing here
    }
    if (event.stopPropagation) {
        event.stopPropagation();
    }
    return false;
});
Run Code Online (Sandbox Code Playgroud)