Добрый день!
Есть галерея на сайте, по нажатию на кнопку "Загрузить ещё" должна происходить дозагрузка фотографий без перезагрузки страницы. Написал такой скрипт:
$(".loading_more_instagram").click( function() {
$this = $(this);
//вот это просто эффект на кнопке
if($this.hasClass("focus")) {
return false;
}
$this.addClass("focus").text($(this).data("load"));
//А вот пошёл сам запрос
$.ajax(
"адрес скрипта отдающего следующие 12 фотографий для загрузки",
{
data: {
arParams: window.arParams, //Передаём массив параметров
max_id: $(this).data("max_id"),
max_tag_id: $(this).data("max_tag_id")
},
type: "POST"
}
).done(function(data) {
$(document).find(".look_instagram_pop .clearfix").remove();
//вот тут ответ есть
console.log($(data));
//а тут уже undefined
console.log($(data).find(".look_instagram_pop").html());
//По идеи добавляем к ранее загруженным фотографиям новые 12 фоток
$(document).find(".look_instagram_pop").append($(data).find(".look_instagram_pop").html());
//А вот это кстати срабатывает
$this.replaceWith($(data).find("span.loading_more_instagram"));
});
return false;
});
Непонятка состоит в следующем:
Когда я вывожу console.log($(data));
, т.е. весь ответ скрипта, я вижу всё, что мне нужно:
Вот что тут есть:
Но как только я обращаюсь к console.log($(data).find(".look_instagram_pop").html())
, в ответ получаю пустой объект (без html()
то же самое):
Ума не приложу, почему так происходит. Ведь в $(data)
уже пришло всё, что мне нужно. В общем, помогите, кто чем сможет. )
Заранее спасибо!
Да, тут действительно 2 варианта, т.к. получаемые в date
теги находятся "на одном уровне", то find()
начинает искать в первом из них и ничего не находит. Для того чтобы это обойти, нужно воспользоваться .filter()
, как написал xfloooo, либо в шаблоне обернуть все элементы общим контейнером div, тогда будет работать jquery find()
.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Делаю валидацию полей формы при помощи jQuery Validation
Бывают случаи, когда prop не срабатываетПочему это происходит и как это исправить?