2013-02-17 120 views
-1

多個環節我都用我的頁面上的同一個類中的多個環節:相同類別

<a class="tweetAnswer" rel="link1" href="">Answer</a> 

我想,當有人點擊這些鏈接之一,以顯示與jQuery警報。不幸的是,它沒有在Firefox上顯示任何內容...

$('a.tweetAnswer').live("click", function(){ 
    event.preventDefault(); 
    alert($(this).attr('rel')); 
}); 

任何想法?

+1

是你使用jQuery 1.9? 'live'方法自jQuery 1.7被棄用,並且在jQuery 1.9中被移除,而是使用'on'方法。 – undefined 2013-02-17 14:48:25

回答

0

live自1.7以來已被棄用,並在版本1.9中被刪除。嘗試:

$('a.tweetAnswer').on("click", function(event){ 
    event.preventDefault(); 
    alert($(this).attr('rel')); 
}); 

編輯:很好的捕獲由adeneo缺乏事件參數。

這裏是一個工作jsfiddle

+0

感謝您的回答,但它不起作用。即使在Safari上... – JeremyW 2013-02-17 14:54:57

+0

@JeremyWagemans - 檢查我添加的jsfiddle鏈接。你能詳細說明它是如何工作的嗎? – ethorn10 2013-02-17 14:57:21

+0

是的,我看到了,但它仍然沒有工作。這太瘋狂了......在webkit上工作得很好,FF上沒有任何東西。 'repondre'鏈接:http://dev2.prysmradio.com/index.php – JeremyW 2013-02-17 15:12:13

0

首先,沒有事件參數:

$('a.tweetAnswer').live("click", function(event){ 
    event.preventDefault(); 
    alert($(this).attr('rel')); 
}); 

其次,你應該用在()中的jQuery 1.7或更高版本:

$(document).on('click', 'a.tweetAnswer', function(event){ 
    event.preventDefault(); 
    alert($(this).attr('rel')); 
}); 
+0

感謝您的回答。在Safari/Chrome上工作得很好,但在FF上沒有任何問題。它會來自別的imo。 – JeremyW 2013-02-17 15:13:50

+0

@JeremyWagemans - 這兩個例子都是委託給動態元素的事件處理程序,並沒有什麼特別的,它們都非常基本,應該適用於所有瀏覽器,尤其是firefox,這些很少遇到這種事件處理程序的問題。 – adeneo 2013-02-17 15:42:22