2013-07-18 6 views
2

코드 스 니펫에 시도해 보았습니다. 첫 번째 코드는 IE와 Chrome에서 작동하고 두 번째 코드는 Chrome에서만 작동하지만 두 가지 모두에서 작동합니다. Firefox에서 작동하지 않습니다. 내가 원하는Firefox에서 event.preventDefault() 및 event.returnValue = false가 작동하지 않습니다.

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

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

편집 링크를 통해 다른 페이지로가는 페이지를 중지하는 것입니다 : 이안의이 조각은 콜백 서명이 event 인수를 등록하지 않습니다 나

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

링크를 사용하지 않는 것이 좋습니다. 특히 링크로 사용하지 않는 것이 좋습니다. 다른 요소 (span 등)를 사용할 수 있으며 원하는 경우 CSS를 사용하여 링크처럼 보이게 할 수 있습니다. –

답변

2

일했다. 따라서 귀하의 콜백은 event 개체에 액세스 할 수 없으므로이를 막을 수 없습니다. 당신은 jQuery를 만 preventDefault를 호출하여 브라우저에서 작동하는 방법을 정상화으로, returnValue 처리 할 필요가 없습니다

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

:

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

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

다음에 코드를 변경 시도를 문서의 핸들러가 전달 된 매개 변수로이 eventObject를 표시하는 방법을

참고 :

$('.album a').click(function(e){ 
    e.preventDefault(); 
    return false; 
}) 
관련 문제