2012-10-27 3 views
-1

이 코드가 작동하지 않는 이유가 무엇입니까? 나는 1 시간을 조롱하고 단순한 것으로 생각되어 졌던 것을 검색하고 테스트하는 데에 썼다. 내가 틀린 반환 및 다른 솔루션에서 제안 된 다른 솔루션으로 시도했지만 페이지 여전히 false false를 무시하는 위쪽으로 이동합니다. 뭐가 문제 야? false 클릭 이벤트가 작동하지 않음을 리턴합니다.

$('#about a').click(function(e) { 
    $('.overlay').fadeTo(300, 0.95); 
    $('#about-text').fadeTo(300, 1); 
    e.preventDefault(); 
}); 

편집

: 이것은 # 정보 A에 대한 HTML이다. 어쩌면 스크립트의 요소 구문에 문제가있을 수 있습니까?

<div class="projects" id="about"><a href="#">About</a></div> 

편집 2 :; t 작업 광범위한 검색, 시행 착오 후 내가 왜이 didn를 찾을 수 없습니다. #about div에서 # 앵커 링크를 제거하고 href가 없으므로 문제없이 작동하는 div에 직접 함수를 적용하기로 결정했습니다.

+2

당신의 HTML은 무엇입니까? –

+1

jsfiddle을 만들거나 문제를 해결하고 방화 광으로 디버그하십시오. –

+1

어떤 브라우저를 사용하십니까? 모든 것이 예상대로 작동하는 것 같습니다 : http://jsfiddle.net/Kxv5Y/ –

답변

2

이 시도 :

$('#about a').click(function(e) { 
    e.preventDefault(); 
    $('.overlay').fadeTo(300, 0.95); 
    $('#about-text').fadeTo(300, 1); 
    return false; 
}); 

이벤트를 보장합니다 상단에 e.preventDefault()를 배치가 중지됩니다. fadeTo 함수에 런타임 오류가있을 수 있습니다.

+0

return false는 fadeTo에 런타임 오류가있는 경우 실제로 도달하지 않습니다. –

+0

시도했지만 작동하지 않습니다. 페이지는 여전히 상단으로 이동합니다. 나는 fadeTo 액션을 css 이벤트로 대체하기까지했다. 그러나 여전히 변화가 없습니다. – drivebass

관련 문제