点击<img/>,阻止<a></a>的激活

时间:2010-08-16 18:58:42

标签: javascript image javascript-events event-handling bookmarklet

我正在尝试实施一个书签,其中用户将点击一个<img/>,并将被重定向到另一个页面,在那里他将为图像添加注释。

如果图像插入HTML锚点中:

<a href="http://anywhere.org"><img src=""http://anywhere.org/image.png"/></a>, 

我可以阻止锚被激活吗?我试过了

event.stopPropagation();

和/或

event.preventDefault();

但它无效

感谢。

2 个答案:

答案 0 :(得分:2)

首先,您可以使用以下方法检查事件是否可以取消:

var bool = event.cancelable;

你可以随时尝试经典

return false:

这几乎会阻止它。

答案 1 :(得分:1)

您应该使用event.cancelBubble并返回false(对于IE)。

但你的方法在FF中运行良好。

  var stop = function(evt)   {
     evt = evt || window.event;


     if(typeof(evt.stopPropagation) === "function") {
        evt.stopPropagation();
     }

     if(typeof(evt.preventDefault) === "function")   {
        evt.preventDefault();
     }

     // this is for IE6
     evt.cancelBubble = true;         
     return false;
  };