为什么我不能在IE中捕捉鼠标点击?
我有一个页面,其中有一个带有文本和图标的矩形区域,整个事物都是可点击的。锚标记被设置为显示:块。其中一个图标有一个onclick处理程序。如果一个人点击一个图标,我只想让该图标的onclick处理程序运行,而不是实际激活包含的定位标记。为什么我不能在IE中捕捉鼠标点击?
Firefox的行为就像我想要的,IE不。
于是,我就陷在onclick处理事件:这没有工作,所以后来我想,也许这本来就是onmouseup或onmousedown事件,所以我增加了一个clickSwallow触发锚标记事件
function my_onclick_handler(evt){
if (!evt) evt = window.event;
// ... handle the click
if (evt.stopPropagation) evt.stopPropagation();
evt.cancelBubble = true;
}
方法onmouseup和onmousedown方法:
function clickSwallow(evt){
if (!evt) evt = window.event;
if (evt.stopPropagation) evt.stopPropagation();
evt.cancelBubble = true;
}
这也没有工作。在这种情况下,如何保持封闭锚点对点击作出反应的任何想法?
我只是使用<span>
,但我认为从事件处理程序返回false
也应该这样做。
尝试你的锚更改为:
<a href="javascript:void(0)"> <img src="..." onclick=".."> </a>
但是我希望锚点能够在锚点覆盖的矩形区域内单击时工作 - 只要它不在一个图像上。 – 2008-12-23 17:13:36
This post有几个项目你不(像e.returnValue和e.preventDefault),但是从文字看来这些都是FF特定功能。虽然可能值得一试。
谢谢。我会检查出来的。 – 2008-12-23 17:21:35
返回错误工作。谢谢!但你对跨度的意思是什么?在IMG周围放置一个跨度并添加onclick? – 2008-12-23 17:11:54