@IvanRobot

Как получить доступ к новым элементам, созданным в jquery?

Сначала формируется DOM, затем, по идеи, нужно применить delay к новым элементам.. Но дело в том, что jquery не находит новые элементы, хотя в браузере их прекрасно видно.

$(document).ready(function(){
$.getJSON("../js/districts.json", function(data) {
  var root = $('.districts'),
  box;
  for (var k in data) {
      if (data.hasOwnProperty(k)) {
          box = $('<div calss="' + k + '"></div>');
          for (var i in data[k].img) {
              if (data[k].img.hasOwnProperty(i)) {
                  $('<div class="popup"></div>')
                      .html('<img src="/img/' + k + '/' + data[k].img[i].name + '.png" />')
                      .appendTo(box);
              }
          }
          box.appendTo(root);
      }
  }
});


});

$(document).on('click', '.map', function () {
  console.log($('.askold .popup'));
  $('.askold .popup').each(function(i, el) {
    $(el).delay(3000 * i).fadeIn(1000);
  });
});


Консоль, при клике курсора, выдает следующие данные о новых элементах
undefined
  • Вопрос задан
  • 254 просмотра
Решения вопроса 1
значит неверный селектор.
box = $('<div calss="' + k + '"></div>');
тут опечатка, может в этом проблема
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы