2013-01-09 2 views
1

도움이 필요하십니까?jQuery 동위 원소가 선택/확장 된 내부 하이퍼 링크

http://jsfiddle.net/8QkEw/313/을 참조하면 확장/선택된 itemSelector가 확장/선택 상태로 유지되는 동안 내부 하이퍼 링크가 작동하도록 코드를 수정하는 방법은 무엇입니까?

$(function(){ 


    var $container = $('#container'), 
     $items = $('.item'); 

    $container.isotope({ 
    itemSelector: '.item', 
    masonry: { 
     columnWidth: 100 
    }, 
    getSortData : { 
     selected : function($item){ 
     // sort by selected first, then by original order 
     return ($item.hasClass('selected') ? -500 : 0) + $item.index(); 
     } 
    }, 
    sortBy : 'selected' 
    }) 

    $items.click(function(){ 
    var $this = $(this); 
    // don't proceed if already selected 
    var $previousSelected = $('.selected'); 
    if (!$this.hasClass('selected')) { 
     $this.addClass('selected'); 
    } 

    $previousSelected.removeClass('selected'); 

    // update sortData for new items size 
    $container 
     .isotope('updateSortData', $this) 
     .isotope('updateSortData', $previousSelected) 
     .isotope(); 

    }); 

}); 

내부 하이퍼 링크를 클릭 할 때만 확장/선택 상자가 최소화되지 않습니다. 다른 영역을 클릭해도 여전히 트리거됩니다. $previousSelected.removeClass('selected');

감사합니다. 링크에

답변

2

중지 이벤트 전파 : http://jsfiddle.net/VCmNU/

+0

덕분에, 그것은 완벽하게 작동합니다, 많이 감사합니다 –

2

당신은 샘플 here 작업 다음 핸들러

$('.item a').click(function(e){ 
    e.stopPropagation(); 
}); 

을 추가 할 수 있습니다 : 여기

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

는 데모입니다.

+0

차이점은 무엇입니까? –

+0

두 솔루션 모두 제공하여 주셔서 감사합니다. 분명히 그렇게 간단하지는 않을 것입니다. 어리석은 내가 –

+0

아무것도, 나는 평행을 제출했다고 생각 –

관련 문제