2011-09-01 59 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函數來避免這種情況,但保留一個可以稍後執行的副本。