2011-09-01 66 views
0

我有一个div弹出时,用户点击一个链接,将他们的英文版本的网站。他们被给予是或否的选择继续。如果他们点击是,我必须捕获他们将要去的地址的“网址”。这在hrefs的链接上很容易,但其中一些链接是执行JavaScript的onClicks。我必须捕获JavaScript,不要执行它,然后如果它们单击是,则执行它。这是我已经捕获的onClick代码,但我如何才能使它工作?捕获JavaScript的onClick JQuery

$_('a#foo').live('click', function(event) { 
    var onclick = $(this).attr("onclick"); 
    $_('#yes a').attr('onclick', onclick);*/ 
    return false; 
    event.preventDefault(); 
}); 

是按钮/ DIV

$_('#yes').live('click', function() { 
    if(href) { 
     window.location=href; 
    }; 
    if(onclick) { 
     eval(onclick); 
    } 
}); 
+0

为什么'$ _'?通常它会是'jQuery'或者''''。 – Alxandr

回答

0

Here's a working demo

基本上,如果一个onclick属性在HTML中定义,这将是访问为somelink.onclick这仅仅是一个函数,所以不需要eval

然而,诀窍是,在onclick-attribute中定义的代码将在jQuery 012之前执行事件处理程序,所以你必须通过删除原来的onclick函数来避免这种情况,但保留一个可以稍后执行的副本。