ajaxify.js 플러그인 https://github.com/browserstate/ajaxify을 사용하여 내용을 동적으로로드합니다.jQuery + Javascript : document.ready와 ajax로드간에 중복 함수 통합
문서 준비시 바인딩하는 숫자가 click
이지만 새로 추가 된 내용에 클릭 이벤트를 다시 바인딩하려면 해당 함수를 내 Ajax로드 함수 내에 추가해야합니다. 이전에 live
함수의 단일 세트를 사용해 보았지만 작동하지 않았습니다.
어쨌든 다음 코드는 두 번, document.ready(function(){ })
안에 있고 내용이로드 된 후 다시 한 번 ajaxify.js 안에 있습니다.
나는 그것이 불필요하다는 것을 알고 있지만, 나는 한 번만 함수를 작성하여 다른 곳에 "포함시킬"수있는 방법이 확실치 않습니다. 이러한 기능을 어떻게 최적화하여 통합하고 효율적인 방식으로 다시 사용할 수 있습니까?
감사합니다. 새로운 기능이 (내가 그것을 테스트하지 않은) 작업을해야 정의
var $filterclear = $('.filters .filter-clear'),
filtercount = $filterclear.length,
$searchedfor = $('.searched-for'),
is_search = $searchedfor.length;
$filterclear.bind('click', function(){
var $me = $(this);
if(filtercount == 3) {
$('.clear-all.filter-clear').addClass('filter-out').fadeOut('fast');
$(this).addClass('filter-out').fadeOut('fast');
} else {
$(this).addClass('filter-out').fadeOut('fast');
}
if($me.hasClass('clear-all') || filtercount == 1) {
$filterclear.addClass('filter-out').fadeOut('fast');
if(is_search !== 0) {
$('.filters').fadeOut();
}
}
});
$('.tag.remove-term').bind('click', function(){
var $me = $(this),
mytext = $me.text(),
$myfilter = $('.filters .filter-clear:contains("'+ mytext +'")');
if(filtercount == 3) {
$('.clear-all.filter-clear').addClass('filter-out').fadeOut('fast');
$myfilter.addClass('filter-out').fadeOut('fast');
} else {
$myfilter.addClass('filter-out').fadeOut('fast');
}
});
$searchedfor.find('.filter-clear').bind('click',function(){
$searchedfor.fadeOut();
});
'live' 이벤트를 사용하여 확실히 동적 페이지에 대처하는 가장 좋은 방법처럼 들린다. '생방송'에 대한 당신의 문제는 무엇입니까? –
그냥 작동하지 않았어! –