2011-09-01 175 views
0

使用jQuery,我想添加一个点击事件到一个搜索按钮,该事件发生在已经绑定到HTML中该按钮的事件之后(另一个点击事件在标记的onclick事件中,它不会被javascript添加) 。添加内嵌点击事件后发生的点击事件?

我尝试过使用.click(function() {...});,但该事件将在按钮上已有的内联onclick事件之前触发。如何在第一次完成后运行我的点击事件?

+3

配售JavaScript事件处理程序内嵌在HTML是一种可怕的做法。如果可能的话,你应该只用jQuery.click绑定这两个处理程序,并以这种方式控制它们的顺序。 – meagar

+2

作为一个谷歌浏览器扩展(见标签)是否内联是不是由我决定。我正在解决已经存在的代码。 –

回答

1

您可以做的一件事就是在页面加载并在自定义点击事件代码之前评估它们时,抓住内联事件。

事情是这样的:

var events = $('#someAnchor').attr('onclick'); 
$('#someAnchor').removeAttr('onclick'); 

$('#someAnchor').click(function(){ 
    eval(events); 
    alert("We came second"); 
}) 

这里有一个简单的例子:http://jsfiddle.net/vkVuP/