ie8中的e.preventDefault()

时间:2012-08-14 15:48:51

标签: javascript jquery web internet-explorer-8

我已经阅读了this,但我仍然无法使其发挥作用。 'e'只是没有属性'returnValue'。怎么了?

HTML

<img id="vtkPicImg" style="display: none;" jQuery17102915111663214694="47"/>

这里是js代码:

var vtk = $("#vtkPicImg");

vtk.bind('mousedown', function(e) {
    e.preventDefault ? e.preventDefault() : e.returnValue = false;
    vtk_mouseDown(e);
    return false;
});

1 个答案:

答案 0 :(得分:2)

更新

关于您更新的问题,点击<img>元素时没有“默认”行为,因此自然没有什么可以阻止的。


由于你使用的是jQuery,所以你只需要......

e.preventDefault();

修复了跨浏览器问题。

您的麻烦可能是您在mousedown事件中执行此操作,其中的元素没有mousedown的默认行为。


为了防止您尝试阻止的任何默认行为,您可能需要使用click事件来执行此操作。

var vtk = $("#vtkPic");

vtk.bind('click', function(e) {
     e.preventDefault();

})
   .bind('mousedown', function(e) {
        vtk_mouseDown(e);
    });