JQuery Live on anchor标签 - Click Event - IE 8+

时间:2013-06-14 10:07:56

标签: jquery

我有一个包含不同锚标签的页面。我想捕获所有锚事件的点击。也可以在将来创建锚标签。所以我写了下面的代码 -

jQuery(document).ready(function () {
        jQuery('a').live('click',function () {
            alert('click');
            return false;
        });
    });

我发现点击正在处理没有onclick属性的锚标签。但是在一些锚标签的情况下它不起作用。一个这样的锚标签 -

<a onfocus="OnLink(this)" href="/tst_doc/somestuff.docx" onmousedown="return VerifyHref(this,event,'1','XXX.OpenDocuments','')">somestuff</a>

所以我的问题是如何让我的点击功能在内联点击之前被调用?

任何见解?

注意:在IE8,IE9中进行测试

2 个答案:

答案 0 :(得分:0)

我担心你无法做到这一点。如果为同一元素分配了相同的事件类型,则有多个处理程序,则不确定处理程序的执行顺序:

  

W3C模型没有说明首先触发了哪个事件处理程序

http://www.quirksmode.org/js/events_advanced.html

P.S。考虑使用.on()而不是弃用的.live()。

答案 1 :(得分:0)

从jQuery 1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。

$("#dataTable tbody tr").on("click", function(event){
  alert($(this).text());
});