关于JavaScript 中的preventDefault() 方法,无效??!!

今天在学习HTML5的拖放过程中遇到了一个关于JavaScript的问题。

preventDefault() 方法
这个方法是为了阻止浏览器对数据或事件的默认处理。

学习拖放的时候用鼠标拖动数据时调用到了这个方法,要把drop事件的默认行为禁掉(默认是以链接形式打开)

在学习代码的时候,我发现拖动图片还是会以链接的形势打开,这说明了
preventDefault()这个方法并没有起到作用,而事件cancelable的属性是true,于是我又查了一下这个方法:

关于这个方法的解释W3School是这样说的:

preventDefault() 方法

Event 对象
定义和用法

取消事件的默认动作。
语法

event.preventDefault()

说明

该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作)。例如,如果 type 属性是 "submit",在事件传播的任意阶段可以调用任意的事件句柄,通过调用该方法,可以阻止提交表单。注意,如果 Event 对象的 cancelable 属性是 fasle,那么就没有默认动作,或者不能阻止默认动作。 无论哪种情况,调用该方法都没有作用。

看到最后一句的时候差点晕菜了,以为这个方法没什么意义,但后来又读了一下应该是说如果cancelable=false,才会"无论哪种情况,调用该方法都没有作用"。但是心里对这个方法是否在浏览器中真的起作用有些疑问,我用的是Firefox 36.0.4 版本浏览器,哪位大神能给我指点一下??非常感谢

你可能感兴趣的:(JavaScript)