2013-07-18 78 views
2

我已經試過這些代碼片段,第一個在IE和Chrome中工作,第二個在Chrome中工作,但是兩個都在他們不在Firefox中工作。我要的是從去其他頁面停止頁面經由鏈路event.preventDefault()和event.returnValue = false在Firefox中不起作用

$('.album a').click(function(){ 
    event.returnValue = false; 
    //other codes 
}) 

$('.album a').click(function(){ 
    event.preventDefault(); 
    //other codes 
}) 

編輯: 這從伊恩片段爲我工作

$('.album a').click(function(e){ 
    e.preventDefault(); 
    //other codes 
}); 
+1

您可能會考慮不使用a-links,特別是因爲您並未將它們用作鏈接。你可以使用另一個元素(span等),如果你想使用CSS來使它看起來像一個鏈接。 –

回答

4

您需要提供Event參數:

$('.album a').click(function(e){ 
    e.preventDefault(); 
    //other codes 
}); 

你並不需要處理returnValue,如jQuery的標準化方法跨瀏覽器的工作,只調用preventDefault

注意在文檔處理程序如何顯示此eventObject作爲傳遞給它的參數:http://api.jquery.com/click/

,並注意Event對象如何有preventDefault方法:http://api.jquery.com/category/events/event-object/

+1

這一個爲我工作 –

2

你的回調簽名不註冊event說法。因此,您的回調無法訪問event對象,並且無法阻止它。

$('.album a').click(function(event){ 
    event.returnValue = false; 
    //other codes 
}); 

$('.album a').click(function(event){ 
    event.preventDefault(); 
    //other codes 
}); 
0

試着改變你的代碼如下:

$('.album a').click(function(e){ 
    e.preventDefault(); 
    return false; 
}) 
相關問題