2011-03-15 6 views
0

민족,탭 이동 문제 내가 함께 무료 서 도움말 텍스트 및 특정 목적지가없는 다른 링크가있는 양식을 가져온 거에요 파이어 폭스에서 = 스택 오버플로의

을 "#"을 HREF에 false를 반환되지만 사용하는 경우 일부 jQuery 함수를 실행하는 데 필요합니다. 예를 들어

:

<a href="#" class="inline helpTrigger cursor">Why do we ask for this?</a> 

이 링크의 클릭이나 키 누르기에는 도움말 풍선 텍스트 옆에 나타납니다. 이 HREF가 값 ("#")를 가지고, 나는 정상에 '점프'에서 페이지를 중지하는 함수를 작성 (아래로)해야한다 : 이것은 대부분의 브라우저에서 작동

$('a[href="#"]').bind('click keypress', function(event){ 
    return false; 
}); 

을하지만, 파이어 폭스 가져 탭을 통과 할 때 붙어서이 요소를지나 가지 않습니다. 이 작업을 수행하는 더 좋은 방법이 있을까요? 아니면 알려진 FF 문제입니까?

href를 완전히 비워 둡니다. 그러나 이것은 의미 상 정확하지 않으며 IE에서 작동하지 않습니다.

도움을 주시면 감사하겠습니다. 감사합니다.

답변

1

언제 어떤 키를 눌렀는지 확인하고 그에 따라 계속할 수 있습니까?

var code = (event.keyCode ? event.keyCode : event.which); 
if(code == 9) { 
    //Do something 
} 
+0

이상적. 전 세계 곳곳에서 사용할 수 있도록이 세계화를 할 것입니다! – Kevin

1

사실, Firefox가 맞습니다. keypress 이벤트가 Tab 키를 차단하고 있기 때문에 다음 요소로 이동하면 안됩니다. 브라우저가 이벤트의 기본 키 처리를 적용하려면 키 누르기를 제거하십시오.

$('a[href="#"]').bind('click', function(event){ 
    return false; 
}); 
+0

환호성을위한 응원들. 당신과 내가 섞은 것의 혼합이었습니다. – Kevin

+0

언제나 기꺼이 도와 드리겠습니다. –

0

event.preventDefault(); 문제를 해결합니다.

+0

Nup. 나는 원래 그것을 가지고 있었다. 그것이 keyPress이고 어떤 키가 눌려 졌는지 테스트하지 않았다고 생각한다. – Kevin