2009-07-16 5 views
3

을 허용/버블 링 방지. 링크를 통해 기사 페이지로 이동해야합니다.JQuery와 아코디언 내가 그래서 아코디언 설정이 기본 링크 액션

<div class="shortheadline"> 
     <div class="entry"> 
      <div class="headline"> 
       <div class="timestamp">11:34 AM</div> 
       <div class="title"><a href="http://beta.macobserver.com/tmo/article/jeff_gamet_shares_iphone_tips_and_tricks_on_macjury/">Jeff Gamet Shares iPhone Tips and Tricks on MacJury</a></div> 
      </div> 
      <div class="brief"> 
       <div class="teaser_image"> <img src="/imgs/cache/imgs/teaser_images/20090708macjury_new-0x80.png" width="80" height="80" id="teas_48236" alt="macJuryJeff Gamet Shares iPhone Tips and Tricks on MacJury" /></div> 
       <div class="teaser"><p><em>The Mac Observer's</em> Jeff Gamet joined <em>MacJury</em> host Chuck Joiner to talk about Apple's iPhone OS 3.0, the iPhone 3GS, and to share some iPhone tips and tricks, too.</p> </div> 
      </div> 
     </div> 
    <!-- more entries --> 
    </div> 

때문에 아코디언 만 이벤트 버블 링을 방지 할 수있는 방법이 있나요는 사업부를 클릭 트리거? 링크의 기본 동작을 계속할 수있는 방법이 있습니까?

이 나는 ​​시도했다 :

링크 기능을 수행하지만 사용자가 새 탭/창에서 링크를 열 수 있도록하지 않습니다
$("a").click(function(){ window.location=this.href; }); 

.

감사합니다.

답변

12

는 클릭 기능이 '이벤트'객체를 전달

$("a").click(function(event){ event.stopPropagation(); }); 

보십시오. 이벤트 객체의 'stopPropagation'메소드를 호출하면 버블 링을 방지 할 수 있습니다.

+0

굉장히 감사합니다! 나는 stopPropagation을 보았고, 내가 찾고 있던 바로 그 것이다. 나는 창문조차 필요하지 않았다. 위치 부분. – user139195

0

나를 위해 일한이 대체 구문을 발견했습니다.

$("a").bind("click", function(e) {e.stopPropagation();});