2012-10-04 7 views
2

나는 (https://github.com/defunkt/jquery-pjax에서) 이런 식으로 pjax을 사용하고 있습니다 :pjax 이벤트를 취소하는 방법은 무엇입니까?

두를. 약간 돌출, 컨테이너를 전달하고 오류를 핸들러 바인딩 : 경우에

<a href='/explore' class='js-pjax'>Explore</a> 

$('#main').pjax('.js-pjax').on('pjax:error', function(e, xhr, err) { 
    $('.error').text('Something went wrong: ' + err) 
}) 

을, 내 링크가 중지 <a href='/explore' class='js-pjax no-link'>Explore</a>

그리고 코드를 통해가는 링크를 방지해야하는 클래스를 가질 수있다 그것은 :

$('body').on('click', 'a.no-link', function() { 
    return false; 
}); 

내 문제입니다 :이 시나리오에서, false를 반환 /로 preventDefault 발사에서 pjax를 중지하지 않습니다.

'js-pjax'링크에 hasClass ('no-link')가있는 경우 pjax를 중지하는 방법에 대한 제안이 있으십니까?

답변

0

초기 PJAX 호출을 수정하여 PJAX가 .no-link 요소를 따르는 것을 방지 할 수 있습니다.

$('#main').pjax('.js-pjax:not(.no-link)').on('pjax:error', function(e, xhr, err) { 
    $('.error').text('Something went wrong: ' + err) 
})