2012-02-02 3 views
3

그래서 jquery onClick 기능이있는 사이트에서 작업하고 있습니다. 링크는 단순한 href="#"입니다.공백 href에 # 파운드 기호 해시 태그를 사용 하시겠습니까?

음, 클릭 할 때마다,

  1. 는 # 기호가 URL에 추가 사이트 페이지

의 상부로 이동

  • 가 더 나은 대안이 있나요 또는 내가 뭔가 잘못하고 있는거야?

  • +0

    가능한 중복로 사용 (http://stackoverflow.com/questions/4224920/an-href-when-the-anchor-tag-only-triggers-a-jquery-action-wi) –

    답변

    7

    클릭 핸들러에서 return false;을 추가하십시오.

    0

    id에 의한 해시 후속은 상기 ID를 가진 앵커 태그에 대한 링크입니다. 앵커 태그가 존재하지 않는다면 왜 페이지 상단에 위치하는지 설명 할 수 있습니다.

    3

    귀하의 onclick 기능이 필요하면 return false이 필요합니다. 또는 당신은이 작업을 수행 할 수 있습니다 : 당신이 jQuery를 사용하는 경우

    <a href="#" onclick="doSomething();return false;">click</a> 
    
    1

    조금 늦었지만, 이벤트 핸들러에서 당신이

    $("#myButton").on("click", function(e) 
    { 
        // Whatever the button should do 
    
        e.preventDefault(); 
    }); 
    

    를 사용할 수있는 e.preventDefault() 정확히 즉, 그것은 기본을 방지 않습니다 페이지의 맨 위로 스크롤하는 것입니다 (# 기호가 자체적으로 나타내는 것입니다). [앵커 태그 만 사용자 리디렉션없이 JQuery와 액션을 트리거 할 때 대안?]

    -1

    제가

    의 다른
    <a href="javascript:void(0)" onclick="doSomething();return false;">click</a> 
    
    관련 문제