Я пытаюсь инициировать некоторый jQuery ($('#slider').leanSlider();
) после успешного ответа Ajax. Включение его в обратный вызов успеха не работает. Я нашел answer here, который, как я считаю, связан, но мне сложно понять, что я должен делать. Как я могу запустить эту строку после успешного ответа Ajax?Инициировать строку jQuery после успешного ответа Ajax?
$('.post-link').click(function(e) {
e.preventDefault();
var post_id = $(this).attr('rel'),
ajaxURL = site.ajaxurl;
function projectShow() {
$.ajax({
type: 'POST',
url: ajaxURL,
data: {'action': 'load-content', post_id: post_id },
success: function(response) {
$('#project-container').html(response);
$('#slider').leanSlider(); <--// This isn't initiating
}
return false;
}
});
}
projectShow();
});
Проверьте, разрешен ли $ .fn.leanSlider с помощью консоли. Также дайте некоторое время после вставки HTML, используя тайм-аут функции обратного вызова для инициализации слайдера. – gskema
Также внедрите обработчик ошибок и проверьте, не вызвана ли ошибка ajax ошибкой – Exinferis
Почему вы создаете функцию 'projectShow()' на каждом клике, а не создаете ее где-то где-то и переходите в 'post_id' и' ajaxURL'? – Klors