2016-02-21 68 views
0

上的mouseup事件中输入动作我有这样的标签:模拟在IE11

<a href="#top" id="atag"><img src="somefile.gif" /> </a> 

我们有必要反转的焦点锚标记上的img,所以我必须使用SVG滤镜和JavaScript来实现像这样的focusin事件:

<a href="#top" class="svgImg" id="atag"> 
    <svg> 
    <image ... /> 
    </svg> 
</a> 

svg filter作品,但由于一些未知的原因,imgsvg更换后,我不能得到的默认行为210通过点击它。我的意思是当我点击倒转的anchor tag时,没有任何反应。甚至认为,当悬停在anchor tag上时,我仍然可以看到它在状态栏上显示的值href

我知道这个问题来自项目中的其他javascripts,但由于它的大小,我无法调试到该prolem的源代码。

于是,我来到了一个临时的解决方案,我会赶上mouseup事件:

$('a').mouseup(function(e) { 
    if ($(this).is('.svgImg') { 
     this.click(); 
    } 
}); 

这个工程,我预期,但再有就是那些从这个anchor tag另一个问题:

<a href="#top" class="svgImg" id="atag" onclick="updateProcess(this)"> 

“点击”后,它被称为两次,我不知道为什么,如我所说,项目是如此之大,我找不到问题。

然后我想到了模拟回车键的想法,因为anchor tags正常运行,如果我在按下enter时他们有焦点。

我的问题是,这可以做到吗?

仅供参考:您可能想问为什么我必须经历所有这些麻烦?因为我在项目中的anchor tags不只是简单地包含一个href,他们还包含onclick,或正在处理一些JavaScript像这样$('#someid').click(....)所以.... !!!!

P/s:请忽略是否有任何错误的JavaScript语法,我输入所有这些内存不足,实际的代码工作,毫无疑问。

+1

可能共享完整的js吗? – brk

+0

@ user2181397对不起,我不能发布完整的js,它会违反我们的政策:( – EagerToLearn

回答

0

你试过用jQuery吗?尝试像这样的水渍

$('#atag').keypress(function (e) { 
var key = e.which; 
if(key == 13) // the enter key code 
    { 
    //put what is needed 
    } 
}); 
+0

谢谢,但这只会触发事件处理程序,我想要的是“模拟”一个Enter而不真正按下键盘上的输入。将是按下输入后锚点标签的默认行为 – EagerToLearn